高手帮一下忙啊!看一下下边这段代码为什么不能用

springcome 2003-12-12 06:20:35
CREATE proc test3_proc
(
@tablename varchar(30)
)
as
create table @tablename
(
id int,
name varchar(50)
)
go
为什么create table @tablename这一句代码出错了啊!@tablename是外部传来的值!
我想动态的创建表
...全文
27 3 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
springcome 2003-12-12
谢谢Rotaxe(程序员)你哈,问题已经解决了!
  • 打赏
  • 举报
回复
Rotaxe 2003-12-12
CREATE proc test3_proc
@tablename varchar(30)
as
declare @str varchar(1000)
select @str='create table ' +@tablename +'(id int,name varchar(50)'
exec(@str)

  • 打赏
  • 举报
回复
vileboy 2003-12-12
改成这样就可以了:
CREATE proc test3_proc

@tablename varchar(30)

as
declare @sql nvarchar(500)
set @sql='create table'+ @tablename+'
(
id int,
name varchar(50)
)'
exec(@sql)
go
  • 打赏
  • 举报
回复
相关推荐
发帖
疑难问题
加入

2.1w+

社区成员

MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
申请成为版主
帖子事件
创建了帖子
2003-12-12 06:20
社区公告
暂无公告