SQL日期变量Delphi

时间:2018-08-03 15:38:20

标签: sql delphi-2010

我的SQL出现了问题:

sSQL:= 'select * from tbldebit where transaction date like " '+ tdate+ ' " ' ;

Delphi 2010不断给我遗漏操作员错误。 (TDate从日期时间选择器中获取值)

期待您的回复

致谢

3 个答案:

答案 0 :(得分:0)

我一直使用:

function DateTimeToSQLDate(const ADate: TDateTime): string;
var
  MyYear, MyMonth, MyDay, MyHour, MyMinute, MySecond, MyMSecond: Word;
begin
  DecodeDateTime(ADate, MyYear, MyMonth, MyDay, MyHour, MyMinute, MySecond, MyMSecond);
  Result := Format('#%d %s %d#', [MyDay, FormatSettings.LongMonthNames[MyMonth], MyYear]);
end;

您将使用此...

sSQL:= 'select * from tbldebit where [transaction date] = ' + DateTimeToSQLDate(TDate);

答案 1 :(得分:-1)

正确的代码= sSQL:='从tbldebit中选择*,其中[交易日期]如“'+ datepicked +'”';

字段名称必须放在方括号中,因为它们是名称中的空格。我测试了它,并且“喜欢”它。

致谢

答案 2 :(得分:-3)

使用如下通配符:

query = "SELECT * FROM tbldebit WHERE date LIKE '%" + tdate+ "%'";