我这个存储过程是要实现几张表数据的迁移。假设这个数据库是DB1(动态创建的数据库,所以名称也是随机的), 要迁移其中Table1 ... Table10 10张表里的部分数据到备份数据库 DB1_Backup (原数据库+"_Backup"后缀)那么我在DB1里写存储过程,如何将数据转移插入到DB1_Backup呢? 无法引用到DB1_Backup啊不要告诉我拼sql啊,太恐怖了,有上千行代码
调试欢乐多
crete proc sp_test
as
insert into DB1_Backup.dbo.table1
seelct * from table1
-- db_name() 函数可以获取当前数据库名
select db_name()+'_Backup'
declare @sql varchar(8000)
set @sql='create database '+db_name()+'_backup'
exec (@sql)
set @sql=''
select @sql=@sql+' select * into '+db_name()+'_backup.dbo.'+tbname +' from '+tbname
from backselect @sql
exec(@sql)
as
insert into DB1_Backup.dbo.table1
seelct * from table1
Go