2

我在使用 FireDac 中的 TTable 过滤日期字段时遇到问题。

MySQL/InnoDB 中的数据库。该字段的类型为日期。

我用来设置过滤器的代码是

Filter := 'date = ' + QuotedStr(FormatDateTime('mm/dd/yyyy', Date));
Filtered := True; 

每次我在设置过滤器时遇到错误:“EConvertError with message 'Could not parse SQL TimeStamp string'”或过滤器无法找到任何记录。

以上格式适用于我当前的区域设置。我也试过'yyyy-mm-dd'。我已经尝试过带引号和不带引号。

4

1 回答 1

4

所以,我花了三个小时在这个问题上,在我提出问题后立即找到了答案。使用预处理器命令

Filter := 'date = {d ' + (FormatDateTime('yyyy-mm-dd', Date))+'}';
于 2015-01-20T14:21:17.150 回答