将 int 转换为 datetime 时溢出

将 int 转换为 datetime 时溢出

我目前正在将一个表从 MYSQL 导入到 MSSQL。那里有一列用于存储日期,但它是以数字形式存储的。当我将其导入 MSSQL 时,我会将其作为 int 数据类型获取。

当我尝试将其转换为日期时间时,我得到了:

将表达式转换为日期时间数据类型时发生算术溢出错误。

由于我使用的是 MSSQL 2005,所以我无法使用 datetime2 并对其进行调整,以免它溢出。

有没有办法修剪存储为 int 的日期以使其不会溢出日期时间格式?

答案1

MSSQL约会时间数据类型可以取从 1753 年 1 月 1 日到 9999 年 12 月 31 日的值。这些值的整数等价值分别为 -53690 和 2958463。尝试转换该范围之外的整数值会导致算术溢出。

相关内容