读书人

请教这个数据库字段数据类型要如何设

发布时间: 2012-12-31 11:57:52 作者: rapoo

请问,这个数据库字段数据类型要怎么设?
现在数据库中有一列,名称为ReturnDate,这列存储的是退回日期,有时需要通过时间区间查询数据,但是此列有大多数的空值,如果设置为datetime的时候,此列在更新的时候就不能为空,如果设置为varchar类型,就不能按时间区间查询,请问各位,我这个字段要设置成什么类型呢?
[解决办法]
最好设为datetime,如果没数据的时候就给默认值,可以考虑一个固定的日期,如1900-01-01或者2999-12-31。甚至使用getdate()来产生。varchar的话要控制好类型格式不好处理。
[解决办法]
,设置成NVARCHAR()啊,datename()返回nvarchar()类型
[解决办法]
最好是日期类型 这样可以直接比较 假如是字符串 就需要转换了 搞不好原有的索引都利用不上 从效率上也就不会很高了
[解决办法]

引用:
还有什么好方法吗?


建议还是设计成varchar()类型吧
[解决办法]
引用:
引用:引用:还有什么好方法吗?

建议还是设计成varchar()类型吧
为什么呢??


用varchar()类型 你规范一下这个字段存储不为空数据的格式 后期查询处理还是很好办的
[解决办法]
不能为空值,就插入NULL呗。
还有一个问题是,为啥更新的时候不能为空?这个字段别更新,或者插入NULL就OK啊。

时间字段为空值(""),没有什么意义。
[解决办法]
引用:
最好设为datetime,如果没数据的时候就给默认值,可以考虑一个固定的日期,如1900-01-01或者2999-12-31。甚至使用getdate()来产生。varchar的话要控制好类型格式不好处理。


+1

读书人网 >SQL Server

热点推荐