使用SQL 循环地从不同的数据库中抽取数据 的 语句
求助:使用SQL 循环地从不同的数据库中抽取数据 的 语句
在数据库中有很多实例,现在希望把每个实例中的数据,抽取insert into进一个表中。
已经建了一个实例表table1,即该表中有一个字段是所有实例的名称。
现在希望使用一条循环语句,每次到table1中查找实例名称,然后放在循环体的from [实例名称].dbo.table中(替代[实例名称])。
求助高手!
------解决方案--------------------
使用游标可能解决,具体你可以语句你可以查看SQL帮助。
------解决方案--------------------
在数据库中有很多实例,现在希望把每个实例中的数据,抽取insert into进一个表中。
已经建了一个实例表table1,即该表中有一个字段是所有实例的名称。
现在希望使用一条循环语句,每次到table1中查找实例名称,然后放在循环体的from [实例名称].dbo.table中(替代[实例名称])。
求助高手!
------解决方案--------------------
使用游标可能解决,具体你可以语句你可以查看SQL帮助。
------解决方案--------------------
- SQL code
declare @sql varchar(8000) set @sql='' select @sql=@sql+' union all select * from ['+实例名称+'].dbo.table' from table1 set @sql=stuff(@sql,1,11,'') exec(@sql)
------解决方案--------------------
没那么容易, 想用@instance来表示数据库名, 只有在动态SQL里才能实现.