Delphi SQL如何只显示数据库中的某些日期

时间:2014-06-29 17:55:55

标签: sql delphi

嘿伙计我不知道怎么问这个我对Delphi很新但是我试图通过Delphi显示一个数据库我正在显示一个人的列表和他们的出生日期但我希望Delphi只显示那些出生在某一年的人,我真的不知道如何实现这一目标,这是我迄今为止所做的,但它并没有真正发挥作用。

adoQ.Active := false;
adoQ.SQL.Text := 'select SPELER, GEBOORTEDATUM from Tennis_Spelers WHERE GEBOORTEDATUM <> 00-00-1986';
adoQ.Open;

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

您必须使用参数:

adoQ.SQL.Text := 'select SPELER, GEBOORTEDATUM from Tennis_Spelers WHERE GEBOORTE =:a1'
adoQ.SQL.Paramaters('a1').asdate := datetimepicker1.date;

如果您没有使用datetimepicker,那么访问将提示您输入参数。

答案 1 :(得分:0)

您不需要使用参数。例如,此代码或类似代码应适用于每个数据库:

adoQ.SQL.Text := 'select SPELER, GEBOORTEDATUM from Tennis_Spelers WHERE GEBOORTEDATUM >= ''19740101'' AND GEBOORTEDATUM <= ''19741231''';

在MS Access中,您也可以尝试:

adoQ.SQL.Text := 'select SPELER, GEBOORTEDATUM from Tennis_Spelers WHERE GEBOORTEDATUM >= #01/01/1974# AND GEBOORTEDATUM <= #12/31/1974#';