CREATE PROCEDURE new_SP
(
@tablename varchar(50)
)
AS
BEGIN
DECLARE @xxx varchar(50)
SET @xxx= 'CREATE TABLE '+@tablename+'( name VARCHAR (50))'
PRINT @xxx
EXEC (@xxx)
问问题
77 次
1 回答
2
至少立即,我注意到您缺少end
:
create procedure new_SP ( @tablename varchar(50)
)
as
begin
declare @xxx varchar(50)
set @xxx= 'create table '+@tablename+'( name varchar (50))'
print @xxx
exec (@xxx)
end -- you are missing this
如果您添加END
,那么这应该可以工作。刚刚在 SQL Server 2008 中对其进行了测试,使用exec dbo.new_SP test
并生成了一个表。
请参阅带有演示的 SQL Fiddle
于 2012-09-19T11:45:52.930 回答