SQlite和WinRT默认日期格式(区域设置)是什么

SQlite和WinRT默认日期格式(区域设置)是什么,sqlite,windows-phone-8,winrt-xaml,system.data.sqlite,Sqlite,Windows Phone 8,Winrt Xaml,System.data.sqlite,美国的日期格式为MM/DD/YYYY,英国的日期格式为DD/MM/YYYY。 当您第一次打开WinRT平板电脑进行设置时,它将根据时区设置日期格式 假设我将WinRT平板电脑设置为使用英国日期格式(DD/MM/YYYY),并使用此代码将日期插入SQLite Class Order { [PrimaryKey, AutoIncrement] public int SId { get; set; } public int CustId {

美国的日期格式为MM/DD/YYYY,英国的日期格式为DD/MM/YYYY。
当您第一次打开WinRT平板电脑进行设置时,它将根据时区设置日期格式

假设我将WinRT平板电脑设置为使用英国日期格式(DD/MM/YYYY),并使用此代码将日期插入SQLite

Class Order { [PrimaryKey, AutoIncrement] public int SId { get; set; } public int CustId { get; set; } public string No { get; set; } public string Customer { get; set; } public DateTime Order_Date { get; set; } } using (var db = new SQLite.SQLiteConnection(DBPath)) { var newOrder = new Order() { CustId = g_intCustId, Customer = txtBlkCustomer.Text.Trim(), Order_Date = DateTime.Today }; db.Insert(newOrder); 阶级秩序 { [主密钥,自动增量] 公共int SId{get;set;} public int CustId{get;set;} 公共字符串No{get;set;} 公共字符串Customer{get;set;} 公共日期时间顺序\u日期{get;set;} } 使用(var db=new SQLite.SQLiteConnection(DBPath)) { var newOrder=新订单() { CustId=g_intCustId, Customer=txtBlkCustomer.Text.Trim(), 订单日期=日期时间。今天 }; db.插入(新订单); 1) SQLite存储的日期格式是什么?美国还是英国的日期格式

2) 如何为SQLite数据库设置日期区域设置(美国日期或英国日期)

3) 如果完成上述(2),则select语句(SQL语句)base on date将基于区域设置


谢谢

您不应该在数据库中存储本地化日期;如果区域设置发生更改,并且这些字符串排序不正确,则会中断

要么使用格式
yyyy-mm-dd
(这是唯一一种可以正确进行比较的格式),要么存储时间戳。

我假设您使用的是

根据文档,在
SQLiteConnection´
参数中有一个
DateTimeFormat
参数,它将指定如何在数据库中处理
DateTime

Ticks-使用DateTime.Ticks的值

ISO8601-使用ISO-8601格式。UTC使用“yyyy-MM-dd HH:MM:ss.FFFFFFF K”格式 本地数据的日期时间值和“yyyy-MM-dd HH:MM:ss.FFFFFFF”格式 日期时间值)

JulianDay-以天和为单位的时间间隔 从公元前4713年1月1日开始的一天的零头

UnixEpoch-整体 自Unix纪元(1970年1月1日)以来的秒数

InvariantCulture-由.NET 框架可以解释为有效的日期时间

当前文化-任何 .NET Framework可以解释为有效日期时间的字符串值 使用当前区域性


默认值为
ISO8601
。还有一个“自定义”
DateTimeFormatString
和一个
DateTimeKind
来指定UTF或本地日期时间。

基于上面的LS\u dev,我的订单日期=日期时间。今天可以吗?是日期时间,今天还是日期时间。现在是UTC日期时间值吗?SQLite将处理日期时间。今天是yyyy mm dd,并将其插入订单日期中。你能给我一个本地化日期的例子吗?当我使用DateTime.Today或DateTime.Now时,它们是默认的ISO8601?否。
DateTime.Today
DateTime.Now
DateTime
数据类型。当您在数据库中存储
DateTime
数据时,连接器将
DateTime
转换为ISO8601格式的SQLite
文本
类型。可以使用Order\u Date>吗=DateTime.Today,其中Order_Date是DateTime数据类型?Sqlite将处理DateTime.Today,并按您所说的将其放入Order_Date中。要在Sqlite中查询日期,我必须记住使用。示例:“Select*from tblCustomer where Order_Date=”日期('2013-10-12'))基于yyyy-mm-dd格式?您偏离了第一个问题。如果日期作为ISO8601存储在数据库中,您可以
SELECT*from tblCustomer WHERE DATE(Order_DATE)='2013-10-12'
。最好绑定一个参数:a
SELECT*from tblCustomer WHERE DATE(Order_DATE)=DATE(?)
,然后是任意
日期时间
,最后是。