CREATE TABLE [dbo].[tblBSP](
[OS_PESO] [varchar](100) NULL
) ON [PRIMARY]
GO
我的表名
tblBSP
带有列OS_PESO
。现在,我必须为BULK INSERT
设置OS_PESO
值。 OS_PESO
列的值如下所示:58,083.15
2,000,000.00
(2,004.84)
我有以下错误:
无法将char值转换为金钱。 char值的语法不正确。
我见过类似的问题,因此,我尝试了这些,但似乎不起作用。
update tblBSP
set OS_PESO = (select convert(money,replace(OS_PESO,',','')))
--or
update tblBSP
set OS_PESO = (select CAST(isnull(OS_PESO,0) as money))
--or
update tblBSP
set OS_PESO = (SELECT CONVERT(varchar, CONVERT(money, OS_PESO), 1 ))
谢谢。 ^^
最佳答案
你可以用它来铸造
更新tblBSP
设置OS_PESO =(选择CAST(OS_PESO AS十进制(18,2)))