当前位置: 代码迷 >> Sql Server >> 将数据类型 varchar 转换为 numeric 时出错。请问!
  详细解决方案

将数据类型 varchar 转换为 numeric 时出错。请问!

热度:313   发布时间:2016-04-27 19:19:15.0
将数据类型 varchar 转换为 numeric 时出错。请教!~
内容如下:

Declare @Content varchar
Declare @DataValue as numeric(10,2)

...
select @DataValue = '123.201234567890'

select @Content = 'Text:' + @DataValue

出错:将数据类型 varchar 转换为 numeric 时出错。

我的目的是显示内容为Text:123.20

请教如何解决这个问题?感谢大家帮忙……

------解决方案--------------------
Text:123.20

??

select @Content = 'Text:' + cast(@DataValue as varchar)




------解决方案--------------------
SQL code
Declare @Content varchar(30)Declare @DataValue as numeric(10,2)select @DataValue = '123.201234567890'select @Content = 'Text:' + convert(varchar,@DataValue)select @content/*------------------------------Text:123.20(1 行受影响)*/
------解决方案--------------------
Text:123.20
你要将你需要的数字提取出来再转换,Text是数据类型还是其中的值,如值的话要截取掉包括冒号。
------解决方案--------------------
需要转换一下 
cast ,convert 都可以的
------解决方案--------------------
SQL code
Declare @Content varchar(50)--你得给你的数据赋个长度Declare @DataValue as numeric(10,2)
------解决方案--------------------
SQL code
Declare @Content varchar(50)Declare @DataValue as numeric(10,2)select @DataValue = '123.201234567890'select @DataValueselect @Content = 'Text:' + CONVERT(varchar(50), @DataValue)select @Content
------解决方案--------------------
LZ在定义
SQL code
Declare @Content varchar
  相关解决方案