主要看使用什么数据库有关如在BDE的Local SQL下,有两种格式,
SELECT *
FROM Order A
WHERE A.'Date' >= '30.12.2001'
或
SELECT *
FROM Order A
WHERE A.'Date' >= '12/30/2001'在ADO+ACCESS下,则可写成WHERE Date >= #2001-30-12#或WHERE Date >= DateValue('12/30/2001')你可以查看相应数据库的SQL日期格式方面的帮助
SELECT *
FROM Order A
WHERE A.'Date' >= '30.12.2001'
或
SELECT *
FROM Order A
WHERE A.'Date' >= '12/30/2001'在ADO+ACCESS下,则可写成WHERE Date >= #2001-30-12#或WHERE Date >= DateValue('12/30/2001')你可以查看相应数据库的SQL日期格式方面的帮助
最标准的日期用ss=formatdatetime('yyyy-mm-dd',date)类似形式获得然后把条件用ss代替
query1.clear;
query1.sql.add('select * from tablename where datefield>=:date1');
query1.parambyname('date1').asdatetime:=date;
query1.open;
日期型的字符串的表示于系统的设置有关,所以不利于程序的移植.ps:20分
compatibility not supported.delphi5程序如下,我不知道那里出的问题。 edit1.text:='1998-10-15';
Query1.Clear;
Query1.SQL.Add ('Select *');
Query1.SQL.Add ('FROM abc.db');
Query1.SQL.Add ('WHERE 调查日期=Datevalue('+'"'+edit1.text+'"'+')');
Query1.Prepare;
Query1.Open;
双引号用两个单引号代替试一下。