Главная страница
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.011 c
7-94602
Diana
2002-01-30 21:32
2002.04.29
Подскажите что я не так сделала....


6-94536
avk
2002-02-15 22:51
2002.04.29
TStream...получение картинки...


3-94306
Seri
2002-04-05 07:02
2002.04.29
Не полная(целая) строка в DBGrid


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


14-94552
drpass
2002-03-22 18:54
2002.04.29
О тупости клиентов