多新鲜!
exec 动态 sql

解决方案 »

  1.   

    CREATE PROCEDURE zi_GetItemData @TbName varchar(20)='zj_xnxw',@NumRow varchar(10)='10'
    AS
      declare @str nvarchar(20)
      set @str=cast(@NumRow as nvarchar)
    exec('select top '+@str+' id,title,keywords,author,source,postdate from'+ @TbName+' order by id desc')
    return 
    GO
      

  2.   

    CREATE PROCEDURE zi_GetItemData @TbName varchar(20)='zj_xnxw',@NumRow varchar(10)='10'
    ASexec('select top '+cast(@NumRow as nvarchar)+' id,title,keywords,author,source,postdate from'+ @TbName+' order by id desc')
    return 
    GO
      

  3.   


    CREATE PROCEDURE zi_GetItemData 
    @TbName nvarchar(20)='zj_xnxw',@NumRow nvarchar(10)='10'
    AS
    declare @sql nvarchar(4000)
    select @sql='select top '+cast(@NumRow as nvarchar)+' id,title,keywords,author,source,postdate from'+ @TbName+' order by id desc'
    execute sp_executesql @sql
    GO动态语句生成即可
      

  4.   

    CREATE PROCEDURE zi_GetItemData @TbName varchar(20)='zj_xnxw',@NumRow varchar(10)='10'
    AS
    DECLARE @strSql varchar(8000)set @strSql = ''@strSql = 'select top '  + CAST(@NumRow  AS VARCHAR(20)) + 
       ' id,title,keywords,author,source,postdate from '
       + @TbName  + 'order by id desc'EXEC @strSql
    return 
    GO