繁体   English   中英

C#中的DateTime和SQL Server中的DateTime之间有什么区别吗?

[英]Is there any difference between DateTime in c# and DateTime in SQL server?

C#中的DateTime和SQL Server中的DateTime之间有什么区别吗?

精度和范围(所以,一切都很重要;-p)

来自MSDN:

.NET System.DateTime

DateTime值类型表示日期和时间,值范围为午夜12:00,1月1日,0001 Anno Domini(Common Era)到11:59:59 PM,12月31日,9999 AD(CE)

时间值以称为刻度线的100纳秒单位测量,特定日期是格里高利历日历日历中自公元0001年1月1日午夜12:00起的刻度数。

Transact SQL datetime

日期范围:1753年1月1日至9999年12月31日

准确度:舍入为.000,.003或.007秒的增量

您还可以使用SQL Server 2008的datetime2。精度也是100ns。 实际上,它是为了匹配.NET DateTime精度而引入的。

datetime2(Transact-SQL)

是。

SQL datetime类型的C#等价物是SqlDateTime

因此,定义SQL调用(当然使用参数集合存储过程)以使用SQLDateTime。 优点是您可以捕获构建命令的任何溢出或超出范围错误,而不是在数据库引擎的执行时捕获。

暂无
暂无

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

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