Знаете, во что перевёл оракловый migration workbench вот эту фразу на T-SQL
DELETE FROM LevelMembers WHERE LevelID = @LevelID
?
Правильно, вот в эту:
DELETE FROM LevelMembers WHERE LevelID = LevelID
И она даже успешно скомпилировалась. Хорошо, что я пошел на нее глазами посмотреть, прежде чем запускать..
DELETE FROM LevelMembers WHERE LevelID = @LevelID
?
Правильно, вот в эту:
DELETE FROM LevelMembers WHERE LevelID = LevelID
И она даже успешно скомпилировалась. Хорошо, что я пошел на нее глазами посмотреть, прежде чем запускать..
no subject
no subject
no subject
Если там есть локальная переменная, объявленная с тем же именем, что и поле - да, есть вероятность, что всё обойдётся.
Но я бы побоялся проверять на себе :)
no subject
DELETE FROM LevelMembers WHERE LevelMembers.LevelID = @LevelID
?
no subject
no subject
К именам полей имена таблиц вроде как сам не подписывает, но если было, то, кажется, сохраняет. То есть, такое, скорее всего, сработало бы правильно.
Вообще-то, в умной книжке написано, что использовать локальные переменные, совпадающие с именами полей, вредно для душевного здоровья. Проблема в том, что оригинальную базу разрабатывал явно выраженный ненатурал, там встречаются имена полей (!) order и type. Ну и процедуры писал он же.
no subject
DELETE FROM LevelMembers t WHERE t.LevelID = LevelID
а сравнение с Null дает в результате Unknown, что на практике в большинстве случаев можно считать и false..
no subject
no subject