gpt4 book ai didi

delphi - DELPHI:Sqlite日期和时间格式,如何?请帮忙

转载 作者:行者123 更新时间:2023-12-03 19:07:18 25 4
gpt4 key购买 nike

我是SQLite的新手,我想知道SQLite中存储日期和时间的最佳格式是什么?

我试图使用这样的东西(我将SQLite Date / Time字段设置为CHAR)保存Date(也类似TIME)。

SQLStr:='INSERT INTO MYTABLE ([DATE]) VALUES ('+#39+FormatDateTime('YYYY-MM-DD',MyDate)+#39+')';


ExecSql起作用了(我认为),因为我可以在表中看到添加的日期。

但是,当我尝试使用StrToDate函数打开该字段时,它总是说,例如2010-11-23不是有效日期。

我不确定,但是我认为StrToDate不适合此操作。如果是这样,那是什么?

救命?

谢谢! :)

我使用D5,ZeosLib 6.6.6和Sqlite3.dll

最佳答案

要将数据库中的字符串转换为日期/时间,可以使用StrToDate(const S: string; const AFormatSettings: TFormatSettings)

AFormatSettings参数可用于配置日期和时间分隔符。



您不能在SQLite 3中声明日期类型:

参见:http://www.sqlite.org/datatype3.html

可以使用以下类型:


文本为ISO8601字符串(“ YYYY-MM-DD HH:MM:SS.SSS”)。
以朱利安天数为实,是公元前4714年11月24日格林威治中午以来的天数。根据公历。
INTEGER as Unix Time,自1970-01-01 00:00:00 UTC以来的秒数


在Delphi中,作为使用日期/时间数据库字段类型的一种方法,可以使用TDateTimeField类型的计算字段,并在OnCalcFields事件中执行转换。

更新:要从Unix时间转换为TDateTime,可以在单元DateUtils中使用UnixToDateTime函数。

关于delphi - DELPHI:Sqlite日期和时间格式,如何?请帮忙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4248064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com