C# 在SQLite中保存日期?

C# 在SQLite中保存日期?,c#,sqlite,datetime,C#,Sqlite,Datetime,我从这个链接中找到了: 1.2日期和时间数据类型 SQLite没有存储类 预留用于存储日期和/或 时代。相反,内置的日期和 SQLite的时间函数是有能力的 将日期和时间存储为文本, 实数或整数值: 文本作为ISO8601字符串(“YYYY-MM-DD HH:MM:SS.SSS”) 真实的如朱利安·戴 数字,从中午开始的天数 公元前4714年11月24日在格林威治。 根据公历序言 日历 整数作为Unix时间 自1970-01-01以来的秒数 协调世界时00:00:00。应用程序可以选择 将日期

我从这个链接中找到了:

1.2日期和时间数据类型

SQLite没有存储类 预留用于存储日期和/或 时代。相反,内置的日期和 SQLite的时间函数是有能力的 将日期和时间存储为文本, 实数或整数值:

文本作为ISO8601字符串(“YYYY-MM-DD HH:MM:SS.SSS”)

真实的如朱利安·戴 数字,从中午开始的天数 公元前4714年11月24日在格林威治。 根据公历序言 日历

整数作为Unix时间 自1970-01-01以来的秒数 协调世界时00:00:00。应用程序可以选择 将日期和时间存储在任何 这些格式可以自由转换 使用内置的 日期和时间函数。日期和时间函数

我有点搞不清楚该用哪一种。我正在创建一个Windows Forms C应用程序,并将使用内置的
DateTime
控件

哪种选择最适合我?我想
TEXT
会的,但也许我弄错了。我是SQLite的新手


谢谢。

我一直在使用文本,没有任何问题。

我想你正在使用?即使SQLite本身不识别datetime数据类型,此数据提供程序也会识别它

例如,如果使用SQLiteDataAdapter使用select语句填充datatable,则如果列的数据类型为datetime,则返回的datacolumn将为datetime

提供程序有一个限制:当select包含多个表时,它无法猜测数据类型。在这种情况下,您可以通过如下方式在查询之前声明返回的数据类型:

types [integer], [text], [boolean], [datetime];
select A.id, A.subject, B.isactive, B.due_date from ...
create table C ( d datetime );
提供程序以文本形式存储数据,如
2009-04-01 17:42:38.828125
。SQLite可以使用此格式,例如,您可以使用以下公式计算第二天的时间:

select datetime('2009-04-01 17:42:38.828125', '+1 days');
编辑:将数据类型指定为日期时间,如下所示:

types [integer], [text], [boolean], [datetime];
select A.id, A.subject, B.isactive, B.due_date from ...
create table C ( d datetime );