想写一个 表名作为一个函数的参数
大概意思像这样if object_id('f_rttable','fn') is not null
drop function f_rttable
go
create function f_rttable(@tname nvarchar(10))
returns table
as
return (select * from @tname)
 这样写 一直在报错 @tname  没有声明 不明白。。请教各位大虾 帮忙改改 谢谢~

解决方案 »

  1.   

    --存储过程
    if object_id('f_rttable','P') is not null drop proc f_rttable 
    go 
    create proc f_rttable
    @tname nvarchar(10) 
    as 
    exec('select * from '+@tname)
    go
    exec f_rttable 'tb' 
    /*ID          Item       User
    ----------- ---------- ----------
    1           B          wang
    1           C          wang
    2           B          fang
    2           D          wang
    3           B          wang
    4           D          fang*/