SQL SERVER ERROR: "The conversion of a datetime2 data type to a datetime data type resulted in an out-of-range value." (informix to sql server)
SQL SERVER ERROR: "The conversion of a datetime2 data type to a datetime data type resulted in an out-of-range value." (informix to sql server)
我有一个 sql 服务器链接服务器来访问 informix 数据库,我正在使用 openquery 运行 查询,然后将结果插入 sql 服务器table.
问题是当我 运行 代码像:
INSERT INTO table_name
( date, comments, user )
SELECT f.date
, f.comments
, f.user
FROM OPENQUERY( LINKED_SERVER_NAME,
'select date
, description as comments
, user_name as user
from tsperson'
) AS f
我收到这个错误:
"The conversion of a datetime2 data type to a datetime data type resulted in an out-of-range value."
我已经尝试过投射,但没有成功。
我在这里和 Google 中搜索了一些答案,但没有找到答案。
那么,有人可以帮助我吗?
您要插入的 table 中的 date
字段似乎使用了 datetime
数据类型。您正在接收 datetime2
格式的数据,该格式超出了有效 datetime
类型的范围。
您可能需要更新 table 以便 date
是 datetime2
类型,或者过滤传入数据以删除您不支持的日期。
datetime
日期范围:1753 年 1 月 1 日至 9999 年 12 月 31 日
datetime2
日期范围:0001-01-01 到 9999-12-31
见https://docs.microsoft.com/en-us/sql/t-sql/data-types/datetime2-transact-sql
我有一个 sql 服务器链接服务器来访问 informix 数据库,我正在使用 openquery 运行 查询,然后将结果插入 sql 服务器table.
问题是当我 运行 代码像:
INSERT INTO table_name
( date, comments, user )
SELECT f.date
, f.comments
, f.user
FROM OPENQUERY( LINKED_SERVER_NAME,
'select date
, description as comments
, user_name as user
from tsperson'
) AS f
我收到这个错误:
"The conversion of a datetime2 data type to a datetime data type resulted in an out-of-range value."
我已经尝试过投射,但没有成功。
我在这里和 Google 中搜索了一些答案,但没有找到答案。
那么,有人可以帮助我吗?
您要插入的 table 中的 date
字段似乎使用了 datetime
数据类型。您正在接收 datetime2
格式的数据,该格式超出了有效 datetime
类型的范围。
您可能需要更新 table 以便 date
是 datetime2
类型,或者过滤传入数据以删除您不支持的日期。
datetime
日期范围:1753 年 1 月 1 日至 9999 年 12 月 31 日
datetime2
日期范围:0001-01-01 到 9999-12-31
见https://docs.microsoft.com/en-us/sql/t-sql/data-types/datetime2-transact-sql