|
|
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Все сообщения про тайные правила направлены Симонову Денису в ответ на его предложение: Симонов ДенисИ принять за правило что смешивать модификацию данных и извлечение нельзя Зачем вводить собственные правила, когда сервер сам бы мог пресечь неверное, на его взгляд, поведение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2014, 19:11:41 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovНю-ню... А какая связь? И проблема-то не в части "читать", а в части "вычислять новые значения на основе старых, ... которые ... равны им". Нарена их вычислять, казалось бы? "Вычисление новых значений" и контекст "old" - вообще мало связанные вещи, да и хрен пока со всеми триггерами - речь идет об эквивалентности update t set f1 = ... и update t set f1=..., f2=f2, f3=f3.... Эта эквивалентность во-первых, ниоткуда не следует, во-вторых, не неизбежна. То, что FB работает в данный момент именно так - мы поняли с помощью топикстартера, твоей и всех участников. Спасибо. Что же дальше? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2014, 19:17:26 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmonНарена их вычислять, казалось бы? А откуда ещё новым значениям полей браться-то? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2014, 19:34:47 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
rashid.abzalov, сколько сервер не учи все виды гавнокода он пресечь не сможет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 10:01:41 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov1) Получение старых значений 2) Вычисление новых значений (включая те, что на основе старых и равны им) А ты точно не усложняешь? Мне кажется, никакого "включая те..." не происходит. У нас есть считанная старая запись, мы меняем в ней что меняется, и при этом никуда старые значения других полей не деваются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 10:06:40 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Симонов Денисrashid.abzalov, сколько сервер не учи все виды гавнокода он пресечь не сможет Не хотелось бы тебя расстраивать, но это как раз одна из главных причин разаработки стандарта SQL - дать однозначное поведение в тех случаях, когда оно имеет смысл, и детектировать ошибку во всех остальных случаях. Ты подходишь к СУБД как к библиотеке - "так, быстрая сортировка уже есть, можно самомму не программировать - а правильно переложить это на сервер. Надежное транзакционно-устойчивое хранение уже есть - можно самому не писать, главное - правильно использовать "библиотеку", то бишь СУБД", и так далее. Но такой подход к делу - не единственно возможный. И, да, задача сервера - детектировать неоднозначные запросы и ругаться на них. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 10:52:10 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmon, это всё пустые рассуждения. По существу согласен, но есть вопрос совместимости. Да и задача не столь важная. Куда важнее улучшать оптимизатор, производительность IO, безопасность. А детектирование гавнокода можно оставить на потом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 11:01:13 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, Это не пустые рассуждения. Это мои рассуждения. Не хами дяде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 11:10:06 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmon, ещё по поводу гавнокода. Вот взять к примеру Оракл. Там всячески пытаются огородить программиста. Мутации ввели. Мне достался проект который я сейчас поддерживаю. Так вот предыдущий программер там такого понаписал, чтобы обойти мутации. Он запихивал в построчном триггере ключ в переменную пакета, а затем в триггере на статмент использовал её для дальнейших манипуляций. И всё бы хорошо пока вставляется/модифицируется одна запись. Но как только их несколько получается полная чушь. И вот тут вопрос каким образом сервер защитил программера от этой ошибки? Помогла ли ему фича с мутацией? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 11:13:18 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
pizmonСимонов Денис, Это не пустые рассуждения. Это мои рассуждения. Не хами дяде. не в коем случае не хотел нахамить. Рассуждения пустыми считаю потому, что сильно сомневаюсь что по их результатам разработчики побегут изменять поведения сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 11:24:04 |
|
||
|
Двойной update, bug?
|
|||
|---|---|---|---|
|
#18+
WildSeryА ты точно не усложняешь? Мне кажется, никакого "включая те..." не происходит. У нас есть считанная старая запись, мы меняем в ней что меняется, и при этом никуда старые значения других полей не деваются. У нас есть считанная старая запись. Мы копируем её в новую. По-моему, этот процесс подпадает под "вычисление", пусть даже EVL не вызывается. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2014, 12:55:57 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38577193&tid=1563834]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
188ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
67ms |
get tp. blocked users: |
2ms |
| others: | 206ms |
| total: | 511ms |

| 0 / 0 |
