繁体   English   中英

SQL无法通过EF保存DateTime的时间

[英]SQL not saving the time of a DateTime via EF

我正在使用EF来保存日期时间。

日期将被保存到数据库,而不是时间。 我正在使用date类型。 但是,SSMS(2012年快递)字段仅显示dd/MM/yyyy (无时间)

读回来,它看起来像26/07/2014 00:00:00

我假设它显示为00:00:00,因为这是保存它的方式(尽管未显示)。

要保存条目,我只是将DateTime分配给我的媒体资源。

myEfModel.Date = DateTime.Now;

我也尝试过(以确保数字的数量不会在保存时混淆SQL)

var timeNow = DateTime.Now;
timeNow.AddMilliseconds(-timeNow.Millisecond);
myEfModel.Date LastUsed = timeNow;

对SO的搜索显示大多数人声称they have no problems saving DateTime.Now via EF

为什么时间不节省?

SQL Server 2012中DATE数据类型专门保存日期 (没有时间)-这是一个功能,而不是错误。...( DATE数据类型是SQL Server 2008中引入的,专门用于仅关心日期的情况,例如“租用日期”或类似的内容(通常是时间部分会给您带来麻烦)。

有关更多详细信息,请参见SQL Serer联机丛书中的MSDN文档日期和时间数据类型

如果还需要时间,请在数据库表中使用DATETIME2(n)代替(其中n的值可以在0到7之间,并定义所需的小数秒位数; 0 =精确到秒,7 =准确度)至100ns)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM