日期时间精确到百分之三秒。小日期时间是 精确到一分钟。
如果您只需要一天的精度怎么办?这里的最佳实践是什么?我意识到日期时间是 8 个字节,而小日期时间只有 4 个字节;但我只是想知道是否有比创建一列 SmallDateTime 并将 SmallDateTime.Date 保存在其中更好或更合适的方法来仅存储日期值?
每一点都有帮助!:)
这取决于您运行的 SQL Server 版本。
- 2008+: 日期
- 2008年-:小日期时间
虽然,如果您查看 smalldatetime 的文档,它们使用一个两字节整数表示日期,使用两个字节整数表示时间,因此您可能会复制它们的行为并只存储一个双字节整数 (smallint),然后使用 DateAdd 添加自 1900/1/1 以来的天数,如果大小在这种情况下确实那么重要。
使用 3 字节日期。查看Date
数据类型