ALTER  procedure dbo.cpsqd_dr_ckd--产品申请单导入到出库单
    (      
      @djhm varchar(30),   --单据名称
      @user_id varchar(10) --员工id
    )
As
set nocount ondeclare @sql_str  varchar(100)
declare @table_name varchar(40) --新表名
set @table_name=(@djhm+'_'+@user_id)   set @sql_str='select * into '+@djhm+' from ls_cpfhsqd where djhm = ' +@djhmexec(@sql_str)------------------------------------------
执行 exec dbo.cpsqd_dr_ckd  'CPSQD20100625095136','10086'错误:
列名 'CPSQD20100625095136' 无效。
服务器: 消息 207,级别 16,状态 1,行 1服务器: 消息 217,级别 16,状态 1,过程 cpsqd_dr_ckd,行 18
超出了存储过程、函数、触发器或视图的最大嵌套层数(最大层数为 32)。
=========================================各位看看是什么错误啊?

解决方案 »

  1.   

    1查下 217 是什么错误类型就可以猜出什么错误
    2 print把SQL语句打印出来,然后执行,就可以看出是什么错误
      

  2.   

    set @sql_str='select * into '+@djhm+' from ls_cpfhsqd where djhm = ' +@djhm
      

  3.   


    alter procedure dbo.cpsqd_dr_ckd--产品申请单导入到出库单
      (   
      @djhm varchar(30), --单据名称
      @user_id varchar(10) --员工id
      )
    As
    set nocount ondeclare @sql_str varchar(1000)
    declare @table_name varchar(41) --新表名set @table_name= @djhm+'_'+@user_id   set @sql_str='select * into '+@djhm+
    ' from ls_cpfhsqd where djhm = '''+@djhm+''''exec(@sql_str)