俺滴问题查询access数据库,奇怪的是查询起始时间是2010年1月1日之后的数据,就什么都查不出来了,其他时间段都正常,请教高手为什么?procedure TFMQuery.BitBtn2Click(Sender: TObject);begin
ADOQuery1.Active:=true;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.add('select id as 实验编号,oiladdr as 采样地点, press as 压力,temp as 温度,testtime as 实验开始时间 from oilsample where (testtime>:p1)and(testtime<:p2) order by testtime');
ADOQuery1.Parameters.ParamByName('p1').Value:=DateTimePicker1.DateTime;
ADOQuery1.Parameters.ParamByName('p2').Value:=DateTimePicker2.DateTime ;
ADOQuery1.Open;
FMQuery.btn1.Click;end;
ADOQuery1.Active:=true;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.add('select id as 实验编号,oiladdr as 采样地点, press as 压力,temp as 温度,testtime as 实验开始时间 from oilsample where (testtime>:p1)and(testtime<:p2) order by testtime');
ADOQuery1.Parameters.ParamByName('p1').Value:=DateTimePicker1.DateTime;
ADOQuery1.Parameters.ParamByName('p2').Value:=DateTimePicker2.DateTime ;
ADOQuery1.Open;
FMQuery.btn1.Click;end;
还有,你有没有将如下的SQL语句直接在数据库里运行过?
select id as 实验编号,oiladdr as 采样地点, press as 压力,temp as 温度,testtime as 实验开始时间 from oilsample where (testtime>'2010-01-01') order by testtime
DateTimePicker1选择最早的时间,所有的数据全部能查询出来,奇怪的是DateTimePicker1选2010-01-01,就一个数据都出不来?
begin
with adoq_search do
begin
Close;
SQL.Clear;
SQL.Add('select * from MACNO where DateTime=:Rq');
Parameters.ParamByName('Rq').Value:=DateToStr(edt_Tipe.Date);
Prepared;
Open;
end;
end;
case Combobox1.ItemIndex of
1: sqlstr:= 'select * from cost where 通话日期 between #3-21# and #6-20# ';
2: sqlstr:= 'select * from cost where 通话日期 between #6-21# and #9-20# ';
3: sqlstr:= 'select * from cost where 通话日期 between #9-21# and #12-20# ';
end;
把你的日期格式转换一下看看 ,最好是转换成和你的testtime 一致的格式
DateTimePicker.Time
ADOQuery1.Active:=true;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.text:=' select id as 实验编号,oiladdr as 采样地点, press as 压力,'+
' temp as 温度,testtime as 实验开始时间 from oilsample '+
' where testtime between :p1 and :p2 '+
' order by testtime';
ADOQuery1.Parameters.ParamByName('p1').Value:=DateTimePicker1.DateTime;
ADOQuery1.Parameters.ParamByName('p2').Value:=formatdatetime(shortdateformat,DateTimePicker2.DateTime)+' 23:59:59';
ADOQuery1.Open;
FMQuery.btn1.Click;end;注意:界面中 DateTimePicker1 DateTimePicker2 不要放反了位置;