Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.29;
Скачать: CL | DM;

Вниз

Мужики, помогите разобраться 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...



Страницы: 1 вся ветка

Текущий архив: 2002.04.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.008 c
1-94386
besen-ok
2002-04-17 12:00
2002.04.29
Как определить содана ли форма


1-94476
Vik_R
2002-04-16 10:03
2002.04.29
hint


1-94420
Den_
2002-04-18 08:57
2002.04.29
Уважаемые Мастера!


1-94353
SergeiV
2002-04-17 09:50
2002.04.29
Windows Task Bar


1-94357
NS
2002-04-17 11:57
2002.04.29
Нужно в RUN-Time создавать экземпляры некоторых объектов (для при