|
|
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
DDL: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Двойной update: Код: sql 1. 2. 3. Запрос: Код: sql 1. Результат: idf1f21value from functionold f2 Как же так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:16:07 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Забыл указать: Server Version: WI-V2.5.2.26540 Firebird 2.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:18:33 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
rashid.abzalovКак же так?А как ты хотел ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:20:48 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
rashid.abzalov, а вот нефиг в селективных процедурах update делать, если это конечно не GTT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:23:36 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
hvlad, idf1f21value from function value updated by function Чтобы сохранились результаты 2-х последовательных update независимых полей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:25:53 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
rashid.abzalovЧтобы сохранились результаты 2-х последовательных updateА где тут два последовательных update ? Далее - запись или обновляется вся, или не обновляется (тоже вся). Нет никаких "update независимых полей". PS Последовательные операции - это такие операции, у которых не пересекаются моменты начала и окончания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:32:43 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, автора вот нефиг в селективных процедурах update делать, если это конечно не GTT Нет, не GTT и транзакция пишущая. А почему нельзя? Например процедура, что-то изменила и сообщила об этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:34:46 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
rashid.abzalovНапример процедура, что-то изменила и сообщила об этом. Для этого процедуру не обязательно делать селективной. Ты ещё не на такие баги напорешься если будешь так делать. В курсе про не стабильность курсора? Если хочешь в каком-то поле зафиксировать тот факт что таблица была изменена это можно сделать с помощью триггеров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:42:45 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
[quot hvlad]rashid.abzalovА где тут два последовательных update ? да хоть бы и непоследовательных. типа update (в процедуре) прошел, ошибок никто не получил, а результата-то его -ап!, и нету. "Нехорошо, Шурик" (с). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:43:22 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
hvlad, авторА где тут два последовательных update ? Ну, хорошо, не последовательных, а вложенных. авторДалее - запись или обновляется вся, или не обновляется (тоже вся). Нет никаких "update независимых полей". То, что сейчас это работает так, это понятно? Но правильно ли это? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 16:46:31 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
rashid.abzalovТо, что сейчас это работает так, это понятно? Но правильно ли это?Я с радостью приму ссылку на стандарт, где описано это поведение. Сам искать не буду - нет ни времени, ни желания. Функции с побочными эффектами - это бардак. В любом ЯП. Обычно в первый год обучения (практического, а не теоритического) это проходит :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 17:52:13 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmon, не надо меня провоцировать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 17:53:02 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
hvladpizmon, не надо меня провоцировать Я пошутил, не обижайся. по сути - все понятно, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 17:55:25 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmon, для закрепления материала советую подумать над результатом немного модифицированной процедуры Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Код: sql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 18:48:45 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Симонов Денисpizmon, для закрепления материала советую подумать над результатом немного модифицированной процедуры Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Код: sql 1. 2. 3. Тебя-то можно провоцировать? Не сбежишь? Тогда есть три варианта - delete в процедуре удаляет одну запись, update - no rows affected. Второй вариант - exception при update (во внешнем контуре). Третий вариант - exception в процедуре, типа попытки удалить залоченную запись. Теперь ты о чем-нибудь подумай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 19:14:58 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmon, даже думать не собираюсь. Просто привёл абсурдность таких действий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 23:34:21 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmon, не угадал результьтат null null null ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 23:47:14 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, это для Fb3 для Fb2.5 The cursor identified in the UPDATE or DELETE statement is not positioned on a row. no current record for fetch operation. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2014, 23:51:03 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Симонов ДенисСимонов Денис, для Fb2.5 The cursor identified in the UPDATE or DELETE statement is not positioned on a row. no current record for fetch operation. Таки шо мэшаеть сделать то же самое для конфликта update-update? Или хотя бы признать проблему? Модератор: Давайте не будем заниматься наездами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2014, 01:31:35 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Модератор: удалено ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2014, 02:40:39 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
rashid.abzalovА почему нельзя?Если не сделать fetch all резалтсета, то результаты могут быть самыми неожиданными. Изменения в таблице лучше фиксировать триггерами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2014, 08:54:12 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Чорт, всё проспал! Надеюсь, под модераториалом скрывается та самая ссылка на стандарт, а не выступление по национальному вопросу. Давайте, шановни друзи, вернемся к исходному вопросу. Про триггера я действительно чуть было не забыл. А они говорят, что updatы таки действительно последовательные, зря мы эту позицию так легко сдали. Можно слегонца модифицировать исходный DML: Код: 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. 51. 52. 53. 54. 55. 56. 57. И получить Код: sql 1. 2. 3. 4. 5. Намек на то, что пока первый апдейт не закончился, второй - не начинается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2014, 11:02:08 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
hvladФункции с побочными эффектами - это бардак. В любом ЯП. Всё есть яд, дружище, и всё есть лекарство - однако же в зависимости от дозы. Мне вот кажется, что "прогоченный" оператор - это больший бардак, чем весь side-effect в мире, вместе взятый. Так что провоцировать надо, иначе не достучаться. Мир? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2014, 11:12:08 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmon, если тебе что-то кажется, а тебе говорят, что это не так, то это есть повод или самому разобраться - почему тебе так говорят, или спросить - а как же там оно на самом деле, или тупо троллить оппонента. Ты пошёл последним путём - твой выбор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2014, 13:21:38 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38575627&tid=1563834]: |
0ms |
get settings: |
10ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 382ms |

| 0 / 0 |
