我想将当前日期/时间存储为数据库中的Unix时间戳,并构建SQL查询。
IntToStr(DateTimeToUnix(Now()))
[dcc32错误] fMainForm.pas(186):E2010不兼容的类型:'string'和'Int64'
如何将当前日期/时间作为Unix时间戳?
答案 0 :(得分:1)
这个程序
{$APPTYPE CONSOLE}
uses
System.SysUtils,
System.DateUtils;
begin
Writeln(IntToStr(DateTimeToUnix(Now())));
Readln;
end.
成功运行并输出当前的Unix时间。因此,我得出结论,您提供的代码不会产生您报告的错误。该错误源于其他一些不属于问题的代码。
据推测,您正在使用该表达式并尝试在整数上下文中使用它。这可以解释错误。如果您需要将值作为整数而不是字符串,则更改
IntToStr(DateTimeToUnix(Now()))
到
DateTimeToUnix(Now())
这是一个完美的例子,说明为什么这样的问题在提交MCVE时更好。