【发布时间】:2014-06-12 09:07:55
【问题描述】:
我得到了一个脚本,它将一个表的内容(从沙箱)复制到另一个表(暂存)中,但我不断收到“将数据类型 varchar 转换为浮点数时出错”消息。
代码如下:
INSERT INTO First_DB.Orig_Table
(CustomerNo, AccountGroupID, ComCode)
SELECT A.CustomerNo, A.AccountGroupID, A.ComCode
FROM Test_DB.DBO.viewCMMasterData A
WHERE NOT EXISTS(SELECT B.CustomerNo
FROM First_DB.Orig_Table B
WHERE B.CustomerNo = A.CustomerNo)
Test_DB.DBO.viewCMMasterData 位于 Views 文件夹下,并与名为 dbo.cmMasterData 的表绑定> 它也位于 Test_DB 数据库中。
关于数据类型,
First_DB.Orig_Table
CustomerNo (PK, varchar(10), not null)
AccountGroupID (int, null)
ComCode (varchar(4), null)
Test_DB.DBO.viewCMMasterData
CustomerNo (nvarchar(255), null)
AccountGroupID (smallint, not null)
ComCode (varchar(4), not null)
我尝试使用 CAST() 但无济于事。
如果我还需要提供更多详细信息,请告诉我。
【问题讨论】:
-
尝试在您的选择中分别运行这两个查询。它们运行正确吗?
-
第一个工作正常,但在第二个 SELECT 语句中,我将 A.CustomerNo 替换为实际值,它也有效(但结果为空)。
标签: sql-server sql-server-2008