Запросы, планы, оптимизация запросов, ...
Модераторы: kdv, CyberMax
-
DSKalugin
- Сообщения: 212
- Зарегистрирован: 27 окт 2004, 13:39
Сообщение
DSKalugin » 17 фев 2006, 13:33
на сколько я знал,
в выражениях ХП перед переменными и параметрами двоеточние не ставится, вот и не ставил и все прекрасно работало. Теперь, читая DataDef.pdf (InterBase 6 Data Definition
Guide стр 172-173) натыкаюсь на примеры, в которых то ставятся двоеточия то не ставятся
в выражениях
Код: Выделить всё
IF (emp_wo_proj = 5) THEN ********
*****************
IF ((:product <> 'software') OR (:product <> 'hardware') OR
(:product <> 'other') OR (:product <> 'N/A')) THEN
result = 'Enter product: software, hardware, other, or N/A';
КАК ЖИТЬ ДАЛЬШЕ?
Последний раз редактировалось
DSKalugin 17 фев 2006, 13:57, всего редактировалось 1 раз.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 17 фев 2006, 13:44
очень просто. лично я следую такому правилу -
для входных, выходных и локальных переменных процедуры (или локальных переменных триггеров), двоеточие перед такой переменной НЕ ставится если переменной присваивается значение. В остальных случаях - двоеточие ставлю всегда. Например
Код: Выделить всё
...
declare variable myvar int;
...
myvar = :myvar+1;
вот и все. собственно, двоеточия здесь ставить необязательно, но на мой взгляд двоеточия помогают быстрее визуально определить, где имена переменных, а где имена столбцов.
-
ivl
- Сообщения: 59
- Зарегистрирован: 22 мар 2006, 15:29
Сообщение
ivl » 22 мар 2006, 15:47
Двоеточие перед локальной переменной, входным или выходным параметром должно обязательно ставиться если они используются в операторах SELECT, INSERT, DELETE и UPDATE.
В других операторах (IF и пр.) ставить не рекомендуется, но допустимо.
(кроме как слева от оператора "=").