...提示“在将nvarchar值'0.15'转换成int时失败”?

发布网友 发布时间:2024-10-24 00:45

我来回答

2个回答

热心网友 时间:2024-11-18 11:14

insert into table2(b) select convert(numeric(5,4),isnull(case then a='' then 0 else a end,0) )from table1
报错是:“在将nvarchar值'0.15'转换成int时失败”?
可能原因
1)SQLSERVER里面当发生转换精度丢失的时候就会失败。
2)你的a那里最好去掉前后的空白字符串,不然sql server自动转换肯定失败,varchar(100)超出int范围了。

而且你语句有错误
isnull(case when a='' then 0 else a end)

热心网友 时间:2024-11-18 11:11

在你的变量前加上’让他变成字符串格式
sql="select * from adminfor where admname= ' " +admname+" ' "

热心网友 时间:2024-11-18 11:12

insert into table2(b) select convert(numeric(5,4),isnull(case then a='' then 0 else a end,0) )from table1
报错是:“在将nvarchar值'0.15'转换成int时失败”?
可能原因
1)SQLSERVER里面当发生转换精度丢失的时候就会失败。
2)你的a那里最好去掉前后的空白字符串,不然sql server自动转换肯定失败,varchar(100)超出int范围了。

而且你语句有错误
isnull(case when a='' then 0 else a end)

热心网友 时间:2024-11-18 11:16

在你的变量前加上’让他变成字符串格式
sql="select * from adminfor where admname= ' " +admname+" ' "

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com