Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
Добрый день. Создал процедуру Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. Её зацикливает, т.е. выдает одну и ту же строку результата множество раз. Хотя должна быть лишь одна строка. Проверяю в IBExpert в Debug procedure выдает правильно одну строку. Запускаю на выполнение опять куча строк с одним и тем же результатом. Создал похожую процедуру Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. Все нормально, выдает правильно одну строку. Подскажите в чем ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 15:23 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
while (1=1) do.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 15:40 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
if ((row_count=0) or (:ts2<:start_date)) then leave; Разве это не должно остановить цикл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 15:41 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
crazypiggy, а разве row_count при фетче отрабатывает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 15:46 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
Вот Пример Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 15:54 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
crazypiggy, Подними проверку вверх, сразу после фетча может и полегчает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 16:24 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
Полегчало :) Так срабатывает. А почему не работало до этого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 16:29 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
crazypiggy, Второй SELECT. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 16:33 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
Понял. Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 16:38 |
|
||
|
Почему зацикливает процедуру?
|
|||
|---|---|---|---|
|
#18+
crazypiggyПолегчало :) Так срабатывает. А почему не работало до этого? Вот здесь ROW_COUNT написано " The ROW_COUNT context variable contains the number of rows affected by the most recent DML statement (INSERT, UPDATE, DELETE, SELECT or FETCH) in the current trigger, stored procedure or executable block. " в вольном переводе ".....содержит количество строк, обработанных в последнем DML ...." Но и даже если бы это было не так, то в логике ... читаем ... обрабатываем ... проверяем а прочитали-ли мы что то как по мне явная ошибка ибо должно быть ... читаем ... проверяем а прочитали-ли мы что то ... обрабатываем ps/ сообщение №1000 можно и сто грамм ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 16:41 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38902720&tid=1562978]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
163ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 274ms |

| 0 / 0 |
