SQL中存储过程的参数怎样才做可以传给SELECT FROM 语句中做表名

浏览次数:891次 悬赏分:0 | 解决时间:2010-1-17 22:12 | 提问者:willonboy
我想写一个存储过程 动态的传递表的名子 返回结果
即
CREATE PROC PROC_TEST (@TABLENAME VARCHAR(100))
AS
SELECT COUNT(*) FROM @TABLENAME


可是上面的语句老是显示不正确  
我要怎样做才能实现我想要的效果呢
救助
最佳答案
CREATE PROC PROC_TEST (@TABLENAME VARCHAR(100))
AS
exec( 'SELECT COUNT(*) FROM '+ @TABLENAME)

复杂点的
CREATE PROC PROC_TEST (@TABLENAME VARCHAR(100))
AS
declare @sql varchar(8000)
set @sql='SELECT COUNT(*) FROM '+ @TABLENAME
exec(@sql )


本文转载:CSDN博客