sql字段为datetime,插入''的时候默认为1900年


Microsoft SQL Server Database Engine 用两个 4 字节的整数内部存储 datetime 数据类型的值。 第一个 4 字节存储“基础日期”(即 1900 年 1 月 1 日)之前或之后的天数。

基础日期是系统参照日期。另外一个 4 字节存储天的时间(以午夜后经过的毫秒数表示)。

相当于存储两个偏移量。1900-1-1的基准值加上两个偏移量,就是存储的日期值,也即两4字节存放的int数。

当你给datetime类型赋值为''时,因为datetime内部存储的原因,实际上是给int型数据赋值,''转换为int为0
可以理解为

dateadd(dd,0,'1900-1-1')


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM