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

sql哪里语法异常

2013-01-06 
sql哪里语法错误DECLARE @px intDECLARE @n moneySET @px0SET @n0UPDATE #12 SET ndhslCONVERT(int,ndh

sql哪里语法错误

DECLARE @px int
DECLARE @n money
SET @px=0
SET @n=0
UPDATE #12 SET ndhsl=CONVERT(int,ndhsl/ntpbzl)*ntpbzl+ntpbzl
WHERE px=1
WHILE @px<20
BEGIN
SET @px=@px+1
SET @n='select ntpbzl-((ndhsl- '+@n+' )%ntpbzl) from #12 WHERE  px= '+@PX+' '''
    UPDATE #12 SET ndhsl=CONVERT(int,ndhsl-@n/ntpbzl)*ntpbzl+ntpbzl
    WHERE px=@px+1
    end

提示消息 235,级别 16,状态 0,第 10 行
无法将 char 值转换为 money。该 char 值的语法有误。

请问哪错了怎么改
[解决办法]
DECLARE @px int
DECLARE @n money
SET @px=0
SET @n=0
UPDATE #12 SET ndhsl=CONVERT(int,ndhsl/ntpbzl)*ntpbzl+ntpbzl
WHERE px=1
WHILE @px<20
BEGIN
SET @px=@px+1
    select @n=ntpbzl-((ndhsl- @n )%ntpbzl) from #12 WHERE  px= @PX
    UPDATE #12 SET ndhsl=CONVERT(int,ndhsl-@n/ntpbzl)*ntpbzl+ntpbzl
    WHERE px=@px+1
    end

热点排行