Query1.Sql.Text:='select * from tablename where fieldname=:dt'; Query1.ParamByName('dt').asdatetime:=date; Query1.Open;
如果有时间的话可以这样:DateField >= DateToSTr(Date)+' 00:00:00' and DateField <= DateToSTr(Date)+' 23:59:59'
Query1.Sql.Text:='select * from tablename where datefield between :ds and :de'; Query1.ParamByName('ds').asdatetime:=DateToSTr(Date)+' 00:00:00';//开始时间 Query1.ParamByName('ds').asdatetime:=DateToSTr(Date)+' 23:59:59';//结束时间 Query1.Open;
不好意思,上在搞错了,正确如下: Query1.Sql.Text:='select * from tablename where datefield between :ds and :de'; Query1.ParamByName('ds').asdatetime:=DateToSTr(Date)+' 00:00:00';//开始时间 Query1.ParamByName('de').asdatetime:=DateToSTr(Date)+' 23:59:59';//结束时间 Query1.Open;
只是当天日期你可以用delphi的函数:date
form test
where ???=Convert(VarChar(10),GetDate(),120)
这使SQL时间类型(2003-1-17 8:12:20)与Delphi中今天时间相等
Query1.ParamByName('dt').asdatetime:=date;
Query1.Open;
and DateField <= DateToSTr(Date)+' 23:59:59'
Query1.ParamByName('ds').asdatetime:=DateToSTr(Date)+' 00:00:00';//开始时间
Query1.ParamByName('ds').asdatetime:=DateToSTr(Date)+' 23:59:59';//结束时间
Query1.Open;
Query1.Sql.Text:='select * from tablename where datefield between :ds and :de';
Query1.ParamByName('ds').asdatetime:=DateToSTr(Date)+' 00:00:00';//开始时间
Query1.ParamByName('de').asdatetime:=DateToSTr(Date)+' 23:59:59';//结束时间
Query1.Open;