![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вот сморю и не пойму как использовать двоеточие в переменных в FB
Rule © (2004-10-21 13:25:00)1.х в Stored Procedure.
Насколько я понял допустим у меня есть переменные
var1, var2, var3
при использовании в запросах обязательно писать переменные с двоеточиями, єто я знаю, а вот при простом присваивании и так и так проходит, так как делать
var1=:var2+:var3
или
var1=var2+var3
Спасибо всем за помощь ...
msguns (2004-10-22 11:16:00) [1]>Rule © (22.10.04 10:32) [13]
>ОГО, вот это дебри, в BLR-код я ещё и не лазил ( и не надо наверное )
Надо, Федя, НАДО !
Rule (2004-10-22 10:32:00) [2]ОГО, вот это дебри, в BLR-код я ещё и не лазил ( и не надо наверное )
Digitman (2004-10-21 17:10:00) [3]
> Johnmen © (21.10.04 16:20) [11]
да .. как раз, наверно, то, что я изначально и предполагал - доп.затраты при компиляции
Johnmen (2004-10-21 16:20:00) [4]>Digitman © (21.10.04 16:11) [10]
Да, понимаю. И подозреваю, что BLR-код будет одинаков. Ведь компилятор, надо думать, "умный", оптимизирующий. Т.е. разные затраты только на компиляцию.
Digitman (2004-10-21 16:11:00) [5]
> Johnmen © (21.10.04 15:37) [9]
истина лежит в детальном анализе и сравнении BLR-данных откомпилированного isql-кода для случая "с двоеточием" и "без двоеточия"
BLR-код, как понирмаешь, интерпретируется непосредственно ядром сервера, и это означает, что любой "лишний" токен приводит к снижению сквозной производительности сервера при исполнении "тела" процедуры
Johnmen (2004-10-21 15:37:00) [6]
> Digitman © (21.10.04 15:05) [8]
Конечно. Цепочкаинтерпретация параметра-переменная-значениедлиннеепеременная-значение.
Но это слабый аргумент. Как и такой
Указывая переменную (т.е. без :) сокращаем исх.текст, более наглядно...:)
Тем не менее согласен с [3] и [5].
Digitman (2004-10-21 15:05:00) [7]
> msguns © (21.10.04 14:25) [6]
хол естерина - вряд ли
компиляция такого скрипта чуть больше ресурсов (временных хотя бы) "ест"
msguns (2004-10-21 14:25:00) [8]>Digitman © (21.10.04 14:13) [5]
.. в иных случаях двоеточие необязательно и даже вредно
Что, холистерина много ?
Rule (2004-10-21 14:25:00) [9]Digitman © (21.10.04 14:13) [5]
Спасибо, так и сделаю :)
Digitman (2004-10-21 14:13:00) [10]
> Rule © (21.10.04 13:52) [4]
просто возьми за правило : если идент-р лок.переменной процедуры/триггера фигурирует в тексте сиквел-запроса, то он должен предваряться двоеточием, в иных случаях двоеточие необязательно и даже вредно
Rule (2004-10-21 13:52:00) [11]Johnmen © (21.10.04 13:44) [3]
О вот я так в принципе и думал, вот только работате и так и так ... но логически так и получается ...
Johnmen (2004-10-21 13:44:00) [12]:var - это параметр
var - переменная
Они могут совпадать. Но суть у них разная.
Для любых ар.выр. работаем с переменными. В текстах запросов исп. параметрический вид переменных.
msguns (2004-10-21 13:41:00) [13]Насколько я понял, двоеточие надо юзать только непосредственно в тексте сэкюль-запроса. Типа как обычные параметры.
stud (2004-10-21 13:33:00) [14]кажется лучще так var1=:var2+:var3