0

我编写了一个代码,它将 varchar 表中的值插入到我的数据库中的结构化表中,我使用了这个模式:

**

insert int Table1 (field1, field 2 .....)
select cast (field1 to date) as field1, cast (field2 as int) as field2 .......
from table1_Temp**

现在我得到这个错误:

Msg 8114, Level 16, State 5, Line 1
Error converting data type varchar to numeric.

我怎样才能知道哪个字段有问题,我怎样才能解决这个问题?

谢谢,

鲍里斯

4

1 回答 1

0

假设您知道要将 field2 转换为数字类型,您可以试试这个:

SELECT field2
  FROM table1_Temp
 WHERE IsNumeric(field2) = 0

如果迭代其他列或使用 OR,您可以同时测试多个字段。

SELECT *
  FROM table1_Temp
 WHERE IsNumeric(field2) = 0
    OR IsNumeric(field3) = 0    
   ...
    OR IsNumeric(fieldN) = 0    
于 2013-10-10T10:55:11.663 回答