我想写一个带表名参数的存储过程怎么写?

tiandike 2005-09-12 08:48:43
我是这么写的
create proc selectfromatable
(
@tablename varchar(20)
)
as
select * from @tablename

可是语法通不过啊
...全文
94 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiandike 2005-09-12
  • 打赏
  • 举报
回复
thanks
zhangyang555 2005-09-12
  • 打赏
  • 举报
回复
create proc selectfromatable
(
@tablename varchar(20)
)
as
exec('select * from '+@tablename)
fxf66 2005-09-12
  • 打赏
  • 举报
回复
CREATE PROCEDURE CRTPROC_CHAR
--没有括号
@table_name varchar(50), --过程参数
@errno int output --过程返回值
AS
declare @procsql_head varchar(8000) ---过程内变量声名
declare @procsql_detail varchar(8000)

.......

表名是动态的话用动态SQL
可用EXEC
或者exec sp_executesql
wjbboo 2005-09-12
  • 打赏
  • 举报
回复
有动态的sql语句
set @strSQL = '……'
beyondtkl 2005-09-12
  • 打赏
  • 举报
回复
yes.. 上面的就可以。。。
wxxzf 2005-09-12
  • 打赏
  • 举报
回复
組合SQL,再用EXEC執行
create proc selectfromatable
(
@tablename varchar(20)
)
as
declare @strSQL nvarchar(800)

set @strSQl='select * from ' + @tablename

EXEC(@strSQL)
vivianfdlpw 2005-09-12
  • 打赏
  • 举报
回复
create proc selectfromatable
(
@tablename varchar(20)
)
as
exec('select * from '+@tablename)

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧