首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

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

2012-04-20 
不允许从数据类型 money 到 nvarchar 的隐性转换。declare @no_price moneyset @no_price426764.0900print

不允许从数据类型 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 = ' +@no_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]

热点排行
Bad Request.