题目中SQL语句是一个插入语句。谢谢。

解决方案 »

  1.   

    --用动态SQL
    create proc p(@sql varchar(2000))
    as
    exec(@sql)
    go
    p 'select * from tbname'
    go
      

  2.   

    什么叫动态的SQL
    我开始试的是 exec @sql,不行。
    为什么要加括号
      

  3.   

    exec 是 EXECUTE 函数的缩写,标准写法是应该加()的,
        在执行存储过程时,可以不加();在执行SQL语句时一般需要加()
    EXECUTE 
    执行标量值的用户定义函数、系统过程、用户定义存储过程或扩展存储过程。同时支持 Transact-SQL 批处理内的字符串的执行