我写了一个存储过程:
REATE PROCEDURE CreatePerspective
AS
declare cursorp cursor for select TableName from OverallPerspective
declare @j varchar(1000)
open cursorp
fetch cursorp into @j
while @@fetch_status=0
begin
exec(select * into +@j+ from Perspective)
fetch cursorp into @j
end
close cursorp
deallocate cursorp
GO
如果数据库里面已经有表,就跳过,进入下一次循环。应该怎样更改这个存储过程呢?
请帮帮忙,先行谢谢了!
REATE PROCEDURE CreatePerspective
AS
declare cursorp cursor for select TableName from OverallPerspective
declare @j varchar(1000)
open cursorp
fetch cursorp into @j
while @@fetch_status=0
begin
if not exists (exec(select * from dbo.sysobjects where id = object_id(N[ + @j + ]) and OBJECTPROPERTY(id, NIsUserTable) = 1))
begin
exec(select * into +@j+ from Perspective)
end
fetch cursorp into @j
end
close cursorp
deallocate cursorp
GO
cREATE PROCEDURE CreatePerspective
AS
declare cursorp cursor for select TableName from OverallPerspective
declare @j varchar(1000)
open cursorp
fetch cursorp into @j
while @@fetch_status=0
begin
if object_id(@j) is null
exec(select * into +@j+ from Perspective)
fetch cursorp into @j
end
close cursorp
deallocate cursorp
GO