1、
declare cursor1 cursor for select name from sysobjects where xtype='u' and status>0 and (name like 'card_%' or name like 'recard_')
declare
@i varchar(1000)
open cursor1
fetch cursor1 into @i
while @@fetch_status=0
begin
exec('drop table '+@i)
fetch cursor1 into @i
end
close cursor1
deallocate cursor1
declare cursor1 cursor for select name from sysobjects where xtype='u' and status>0 and (name like 'card_%' or name like 'recard_')
declare
@i varchar(1000)
open cursor1
fetch cursor1 into @i
while @@fetch_status=0
begin
exec('drop table '+@i)
fetch cursor1 into @i
end
close cursor1
deallocate cursor1
as
begin
exec('create table '+@tablename+'(a int)')
end
create procedure @tablename
as
begin
exec('create table '+@tablename+'(a int)')
end在SQL Server是通不过的?
as
begin
exec('create table '+@tablename+'(a int)')
end
服务器: 消息 156,级别 15,状态 1,过程 proc_name,行 3
在关键字 'begin' 附近有语法错误。
服务器: 消息 137,级别 15,状态 1,过程 proc_name,行 4
必须声明变量 '@tablename'。
create procedure proc_name @tablename
as
begin
exec('create table '+@tablename+'(a int)')
end
@tablename varchar(50)
as
begin
exec('create table '+@tablename+'(a int)')
end
sp_helptext sp_createcard
--查看存储过程引用数据表的情况
sp_depends sp_createcard
--查看数据表被存储过程应用的情况
--sp_depends card_clang---调用存储过程
drop table testtable
exec sp_createcard 'testtable'
select * from testtable
select * from testtable
看到的属性列比建立表时候再存储过程中指定的要少?为什么为什么为什么为什么为什么为什么为什么为什么??