-1
我想将当前日期/时间作为Unix时间戳存储在数据库中,并且正在构建SQL查询。E2010不兼容的类型:'string'和'Int64'
IntToStr(DateTimeToUnix(Now()))
[dcc32错误] fMainForm.pas(186):E2010不兼容的类型: '字符串' 和 'Int64的'
如何获得当前的日期/时间为Unix时间戳?
我想将当前日期/时间作为Unix时间戳存储在数据库中,并且正在构建SQL查询。E2010不兼容的类型:'string'和'Int64'
IntToStr(DateTimeToUnix(Now()))
[dcc32错误] fMainForm.pas(186):E2010不兼容的类型: '字符串' 和 'Int64的'
如何获得当前的日期/时间为Unix时间戳?
此程序
{$APPTYPE CONSOLE}
uses
System.SysUtils,
System.DateUtils;
begin
Writeln(IntToStr(DateTimeToUnix(Now())));
Readln;
end.
成功运行,并输出当前的Unix时间。因此,我认为您提供的代码不会产生您报告的错误。这个错误是由一些其他代码不是问题的一部分引起的。
大概你正在接受这个表达式并试图在整数上下文中使用它。这将解释错误。如果你需要的值为整数,而不是字符串,然后更改
IntToStr(DateTimeToUnix(Now()))
到
DateTimeToUnix(Now())
这就是为什么当与MCVE提出这样的问题是更好的一个很好的例子。
D'oh !!德尔福多年以来。 – Mawg
请注意'DateTimeToUnix()'返回一个'Int64',而不是'Integer'。 –