Вниз
Скачать: CL | DM;

Помогите сформулировать SQL запрос: where поле дата - пустое!   Найти похожие ветки 

 
NewSer   (2008-03-03 14:01) [0]

БД ADO + Access,
как сформулировать SQL запрос: "WHERE PoleData<>пустое ИЛИ PoleData<>01.01.2001" (или какая в Access по-умолчанию помещается дата?), не будет ли путаницы с форматом (дата-строка) и как "пусто" написать на языке SQL?


 
Reindeer Moss Eater ©   (2008-03-03 14:02) [1]

пусто это null


 
Kolan ©   (2008-03-03 14:03) [2]

> WHERE PoleData<>пустое

WHERE PoleData IS NOT NULL


 
Sergey13 ©   (2008-03-03 14:03) [3]

> не будет ли путаницы с форматом (дата-строка)
Будет. Обязательно. Нужно использовать параметры.

> и как "пусто" написать на языке SQL?
NULL. Только не =NULL a IS [NOT] NULL


 
NewSer   (2008-03-03 14:09) [4]

> > не будет ли путаницы с форматом (дата-строка)
Будет. Обязательно. Нужно использовать параметры.


Каким образом?


 
Kolan ©   (2008-03-03 14:11) [5]

WHERE PoleData IS NOT NULL OR PoleData <> :MyDateParam

А потом:

var
 SomeDateTime: TDateTime;
begin
 MyQuery.ParamByName("MyDateParam").AsDateTime := SomeDateTime;
end;


 
NewSer   (2008-03-03 14:19) [6]

Ага! Спасибо!

ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.ParamByName("MyDateParam").AsDateTime := StrToData("01.01.2001");
ADOQuery.SQL.Add("SELECT FIO, Filial, Data FROM Sotrudniki "+
  "WHERE PoleData IS NOT NULL OR PoleData <> :MyDateParam");
ADOQuery.Open;


Вот так?


 
Kolan ©   (2008-03-03 14:21) [7]

> Вот так?

Нет, наоборот.

ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add("SELECT FIO, Filial, Data FROM Sotrudniki "+
 "WHERE PoleData IS NOT NULL OR PoleData <> :MyDateParam");
ADOQuery.ParamByName("MyDateParam").AsDateTime := StrToData("01.01.2001");
ADOQuery.Open;


 
NewSer   (2008-03-03 14:32) [8]

Ещё раз, СПАСИБО!, Kolan!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.038 c
2-1204281620
arhis
2008-02-29 13:40
2008.03.30
Символ возврата каретки.


2-1203887383
IgorT
2008-02-25 00:09
2008.03.30
Как узнать список файлов по заданому HTTP (URL) адресу ?


15-1202661027
ketmar
2008-02-10 19:30
2008.03.30
kpmc git repository


15-1202622908
Cyrax
2008-02-10 08:55
2008.03.30
Обязаны ли комп. магазины заполнять гарантийн талон производител


15-1202656809
DVM
2008-02-10 18:20
2008.03.30
Поясните насчет клиентских лицензий Windows Server




   Наверх