sql语句!实在没有分了!!(8分)

  • 主题发起人 主题发起人 guanxianjun
  • 开始时间 开始时间
G

guanxianjun

Unregistered / Unconfirmed
GUEST, unregistred user!
现在有一表,名为PDM,里面有一字段datetime ,为时间日期型,现在我要选择一天的数据
做报表,用adoquery和fastreport连接,用ttdatetimepicker 控件选择日期。
我的语句为
var
a:tdate;
begin
a:=tdatetimerpick1.date;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('select *from pdm where datetime between 'a 00:00:00.000'and
'a 23:59:59.999'');
adoquery1.exesql;
fastreport.
sql 语句编译不过去??
请问有什么问题没有
 
那看看下面他提示什么错误了
 
你不能把A这个变量写在'内,而应该是
adoquery1.sql.add('select *from pdm where datetime between"'+a+' 00:00:00.000" and
"'+a+' 23:59:59.999"');
 
试一下:
ADOQuery1.SQL.Add('select * from pdm where datetime between ''a 00:00:00.000'' and ''a 23:59:59.999'''
 
*from 连在一起了。
* from
 
我那条语句(把a改为日期)在SQL SERVER中通过
如果把a
var
a:string;
begin
a:='2002-11-21'
end
则not found a
 
a:tdatetime;
***************
 
你可以用datetimepicker1.time:=00:00:00,datetimepicker2.time:=23:59:59
这样在查询
 
var
a:tdate;
begin
a:=tdatetimerpick1.date;
adoquery1.close;
adoquery1.sql.clear;
[red]adoquery1.sql.add('select *from pdm where datetime between ''' + DateToStr(a) + ' 00:00:00.000'' and ''' + DateToStr(a) + ' 23:59:59.999''');[/red]
adoquery1.exesql;
红的那句就可以了
 
a:=tdatetimerpick1.date改成a:=tdatetimerpick1.datetime
 
后退
顶部