【发布时间】:2025-12-07 01:55:01
【问题描述】:
我使用的是 SQL Server 2008 R2。我有 2 个表 old 和 new 以及大约 500k 行。
我需要将数据从old 转换为new。某些列已更改。例如,在old 表中,许多列的类型为varchar,在new 表中为int。
我正在执行这样的查询:
INSERT INTO new (xxx)
SELECT FROM old (yyy)
并得到以下错误:
消息 245,第 16 级,状态 1,第 4 行
将 nvarchar 值“Tammi”转换为数据类型 int 时转换失败。
此错误表明,old 表中有一些列中的数据错误的行。 (人的因素)。
但是我怎样才能找到这些错误的行呢?有可能吗?
如何在哪一列找到错误数据?
【问题讨论】:
-
检查这个答案 - *.com/q/10517777/1080354
-
您的查询仅显示使用了一个单个列,
yyy。
标签: sql-server sql-server-2008-r2