当前位置: 代码迷 >> Sql Server >> 不允许从数据类型 money 到 nvarchar 的隐性转换。解决思路
  详细解决方案

不允许从数据类型 money 到 nvarchar 的隐性转换。解决思路

热度:597   发布时间:2016-04-27 13:25:19.0
不允许从数据类型 money 到 nvarchar 的隐性转换。
declare @no_price money
set @no_price=426764.0900
print @no_price

提示:
服务器: 消息 257,级别 16,状态 3,行 3
不允许从数据类型 money 到 nvarchar 的隐性转换。请使用 CONVERT 函数来运行此查询。

求解,各位高手!

------解决方案--------------------
SQL code
select convert(nvarchar(32),column) from tab
------解决方案--------------------
那就是用convert

declare @m money
set @m='2342.33'
select convert(varchar(10),@m)

 

------解决方案--------------------
SQL code
declare @no_price moneyset @no_price=426764.0900select CONVERT(nvarchar(32),@no_price)print @no_price/*(无列名)426764.09*/
------解决方案--------------------
SQL code
declare @no_price decimal(18,4)set @no_price=426764.0900Exec('UPDATE 表 SET no_price = ' [email protected]_price+ ' WHERE id=1749')
------解决方案--------------------
任君选择

declare @no_price money
set @no_price=426764.0900

declare @sql varchar(8000)
set @sql = 'UPDATE 表 SET no_price = ' +convert(varchar,@no_price,2)+ ' WHERE id=1749'

Exec(@sql)
[code=SQL][/code]
  相关解决方案