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




Вниз

Мужики, помогите разобраться c create view . 


B_A_V   (2002-04-09 08:33) [0]

Пишу код (СОЗДАЮ ТАБЛИЦУ ПРОСМОТРА):
procedure TFm_svod.BitBtn2Click(Sender: TObject);
begin
ADOQ_svod.Close;
ADOQ_svod.Parameters.ParamByName("pd5").value:=DTP_svod.Date;
ADOQ_svod.SQL.text:="create view sss7 as select * from Ysh_Pr where Data_YP <=:pd5 ";
ADOQ_svod.ExecSQL;
end;
- НЕ РАБОТАЕТ
Пишет - Incorrect syntax near the keyword "view"

Пишу код (ДЕЛАЮ ВЫБОРКУ):
procedure TFm_svod.BitBtn2Click(Sender: TObject);
begin
ADOQ_svod.Close;
ADOQ_svod.Parameters.ParamByName("pd5").value:=DTP_svod.Date;
ADOQ_svod.SQL.text:= "select * from Ysh_Pr where Data_YP <= :pd5 ";
ADOQ_svod.Open;
end;
- РАБОТАЕТ


Что посоветуете?

Самое интересное заменяю строчку
ADOQ_svod.SQL.text:="create view sss7 as select * from Ysh_Pr where Data_YP <=:pd5 ";
на
ADOQ_svod.SQL.text:="create view sss7 as select * from Ysh_Pr where Data_YP <=""2002-01-01"" ";
- ВСЕ РАБОТАЕТ

Я вообще уже запутался, бьюсь уже второй день.



Johnmen   (2002-04-09 09:15) [1]

Такой вот вариант :

...
ADOQ_svod.SQL.text:="create view sss7 as select * from Ysh_Pr where Data_YP <="""+
FormatDateTime("yyyy.mm.dd",DTP_svod.Date)+"""";
...

и ,соответственно, никаких параметров...



wicked   (2002-04-09 10:20) [2]


> FormatDateTime("yyyy.mm.dd",DTP_svod.Date)

только не забудь, что даты пишутяс в формате "yyyy-mm-dd"... или используй convert...



MCFire   (2002-04-09 11:07) [3]

У тебя параметр передаётся в формате TDateTime а нужно в string.
DTP_svod.Date это число которое определяет дату а не сама дата



B_A_V   (2002-04-09 11:15) [4]

всем спасибо



B_A_V   (2002-04-09 12:07) [5]

А почему тогда во втором случае при выборке работает?

procedure TFm_svod.BitBtn2Click(Sender: TObject);
begin
ADOQ_svod.Close;
ADOQ_svod.Parameters.ParamByName("pd5").value:=DTP_svod.Date;
ADOQ_svod.SQL.text:= "select * from Ysh_Pr where Data_YP <= :pd5 ";
ADOQ_svod.Open;
end;
- РАБОТАЕТ



Johnmen   (2002-04-09 12:20) [6]

Потому, что в 1.случае нужна фактически макроподстановка,
а во 2. просто параметр...



wicked   (2002-04-09 12:21) [7]

потому что "create view..." и "select * from..." - это две большие разницы... первое - это data definition language, к нему mssql относится очень трепетно и щепетильно... а второе - простой select...




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




Наверх





Память: 0.73 MB
Время: 0.026 c
1-94422           dimonf                2002-04-17 19:50  2002.04.29  
Подскажите, как правильно позиционировать TPanel и StringGrid?


3-94323           vopros                2002-04-09 13:16  2002.04.29  
Срочно. Как в DbgridEH, сделать чтобы формат представления числа


7-94603           Александр!            2002-01-30 14:13  2002.04.29  
Абсолютная запись на HDD i FDD???


14-94568          tovSuhov              2002-03-25 08:53  2002.04.29  
Этот злобный Виндовс...


6-94528           Lenidus               2002-02-17 14:10  2002.04.29  
Чем заменить компонент TWebBrowser?