Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.21;
Скачать: [xml.tar.bz2];




Вниз

переменные в sql в mssql?? 


ol   (2001-12-18 10:01) [0]

Подскажите правильно ли определяю переменные

where s.dat_tek between @d1 and @d2 and
s.subdivid=@podr
если да то как их потом прописать в компоненте(использую ADOQuery1),в оракле все гораздо проще, он сам их находит,
а тут что нужно руками прописывать в parameters?
пробовал прописать d1,d2,podr - ругается



SergSuper   (2001-12-18 10:18) [1]

Вы путаете переменные сервера и параметры
Первые существуют только на сервере, вторые заполнются клиентской частью перед отсылкой запроса.
Если Вы напишите
where s.dat_tek between :d1 and :d2 and
s.subdivid=:podr
то "он сам их найдёт"



handra   (2001-12-18 10:23) [2]

Параметры в TADOQuery прописывают примерно так:
where s.dat_tek between :d1 and :d2 and s.subdivid=:podr
Есть одна тонкость! Параметры с одинаковыми именами по ParamByName не устанавливаются все (только первый из них), т.е конструкция %
where s.date_tek=:d1 or :d1 is null
по ParamByName не заработает, я делаю так:
declare @d1 datetime
set @d1=:d1
...
where s.date_tek=@d1 or @d1 is null
в этом случае нужно указать типы параметров вручную, а если используется динамически созданный TADOQuery, то вызывать Parameters.ParseSQL и для параметров со значением NULL вручную указывать тип данных



ol   (2001-12-18 11:43) [3]

>Если Вы напишите
>where s.dat_tek between :d1 and :d2 and
> s.subdivid=:podr
Так я уже пробовал
выдается ошибка
Line 43: Incorrect syntax near ":".



Delirium   (2001-12-18 11:46) [4]


....
where (s.dat_tek between :d1 and :d2 ) and
( s.subdivid=:podr )



ol   (2001-12-18 11:55) [5]

>where (s.dat_tek between :d1 and :d2 ) and
>( s.subdivid=:podr )
Line 43: Incorrect syntax near ":".



Delirium   (2001-12-18 12:40) [6]

Попробуй вставить пробелы перед ":" и после параметров, хотя у меня всё и так работает.




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.21;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.026 c
1-66230           Savig                 2001-12-27 16:40  2002.01.21  
D5 под Win2K


1-66250           Shadow77              2001-12-27 23:08  2002.01.21  
Delphi-Qt2.x Interface Library


6-66335           Kornet                2001-10-08 16:04  2002.01.21  
Как найти свободный порт?


4-66405           Dimich                2001-11-10 13:31  2002.01.21  
Прочитайте вопрос


1-66240           msys                  2002-01-02 21:06  2002.01.21  
Кодировка