declare @staff_id char(6) 
declare @agent_id char(6)
declare @sql varchar(500)
declare @count int
declare @num int 
........

解决方案 »

  1.   

    declare @staff_id char(6), 
    @agent_id char(6), 
    @sql varchar(500), 
    @count int,@num int 
    set @num=1 
    set @count=5 
    while(@num <@count) 
    begin 
    select @staff_id=substring(cast(newid() as char(36)),1,6) 
    insert into staff(staff_id,agent_id,defaultrolegroup,staffname) 
    values(@staff_id,'642'+cast(@num as char(2)),'ob1','试训2'+cast(@num as char(2))) 
    set @num=@num+1 
    end 
      

  2.   

    declare @staff_id char(6) 
    declare @agent_id char(6)
    declare @sql varchar(500)
    declare @count int
    declare @num int set @num=1 
    set @count=5 
    while(@num <@count) 
    begin 
    select @staff_id=substring(cast(newid() as char(36)),1,6) 
    insert into staff(staff_id,agent_id,defaultrolegroup,staffname) values(@staff_id,'642'+cast(@num as char(2)),'ob1','试训2'+cast(@num as char(2)) 
    set @num=@num+1 
    end 
      

  3.   

    insert into staff(staff_id,agent_id,defaultrolegroup,staffname) values(@staff_id,'642'+cast(@num as char(2)),'ob1','试训2'+cast(@num as char(2)) 
    改为:
    insert into staff(staff_id,agent_id,defaultrolegroup,staffname) values(@staff_id,'642'+cast(@num as char(2)),'ob1','试训2'+cast(@num as char(2))) 
      

  4.   

    declare @staff_id char(6) 
    declare @agent_id char(6)
    declare @sql varchar(500)
    declare @count int
    declare @num int set @num=1 
    set @count=5 
    while(@num <@count) 
    begin 
    select @staff_id=substring(cast(newid() as char(36)),1,6) 
    insert into staff(staff_id,agent_id,defaultrolegroup,staffname) 
    values(@staff_id,'642'+cast(@num as char(2)),'ob1','试训2'+cast(@num as char(2)) )
    set @num=@num+1 
    end 
      

  5.   

    语句中少了一半括号,同时为了方便程序阅读,最好把变量声明分开,一行一个便了比较好。
    declare @staff_id char(6) 
    declare @agent_id char(6)
    declare @sql varchar(500)
    declare @count int
    declare @num int set @num=1 
    set @count=5 
    while(@num <@count) 
      begin 
        select @staff_id=substring(cast(newid() as char(36)),1,6) 
        insert into staff(staff_id,agent_id,defaultrolegroup,staffname) 
          values(@staff_id,'642'+ cast(@num as char(2)),'ob1','试训2'+cast(@num as char(2)))
        set @num=@num+1 
      end