declare @a int,@b int,@c int,@d int
set @a=gqbm
set @b=page_gqgl.y
set @c=page_gqgl.x
set @d=0
if @a=gqbm
begin 
while @b>0
begin 
set page_gqgl.y=@b
set @b=@b-1
while @c>0
begin
set page_gqgl.x=@c
set @c=@c-1
set @d=cast(@a as nvarchar(10))+cast(@b as nvarchar(10))+cast(@c as nvarchar(10))
insert into page_gqgl(s2,s3,gqbm,y,x,wzbm)
values(CONVERT(varchar(100), GETDATE(), 20),1,@a,@b,@c,@d)
end
end
endset page_gqgl.y=@b
set page_gqgl.x=@c
这两行有问题,该怎么改

解决方案 »

  1.   

    page_gqgl 是什么?
    如果是表的话,要用 
    select @b=y from page_gqg1 
    才行,不能直接引用的.
      

  2.   

    你这个写法不对,如果表中有多条数据,不能把多个值给一个变量吧?
    下面也有些错误,不能set page_gqgl.y=@b,set page_gqgl.x=@c
    如果是表中字段,要update tb set x=? where x=?
      

  3.   

    应该select @b=y from page_gqg1   然后再拼接上
      

  4.   

    set @b=page_gqgl.y 这种写法有问题。
    @b是个变量
    后面是个字段
    赋值的话:select @b=y from page_gqgl --但是如果y有多个还是会报错的。