我首先要说的是,我不是SQL Server数据库专家,我是一个.NET开发人员。
我正在支持一个应用程序,它有一些相当大的表,其中有许多列,并且表中存储了大量数据(不是数百万行,而是数千行)。以前的开发人员决定到处使用smalldatetime。
我们现在遇到了此数据类型的最大范围为2079的问题。这是在SQL Server 2012中。
我的想法是,我们需要将这些列转换为datetime2。这是正确的方法吗?如果是,有哪些考虑因素?
发布于 2021-10-29 15:29:56
是的,对于较大范围的时态值,datetime2是最合适的类型。更准确地说,如果您不需要小数秒,请使用datetime2(0),因为它只需要6字节的存储空间,而datetime2(7)只需要8字节的存储空间(未指定精度时的默认值)。
https://stackoverflow.com/questions/69771233
复制相似问题