日期:2014-05-17  浏览次数:20348 次

在线等:从A数据库一张表中抓取一些字段的记录,插入到B数据库
从A数据库一张表中抓取一些字段的记录,插入到B数据库中一张表中,这两张表所有字段一样。可以自动执行。比如A数据库中AA表插入了一些字段,SQL Server 2005可以自动插入到B数据库的AA表中,在线求解答。谢谢了。我是自己想了很久,都头绪,求帮助。
------解决方案--------------------
你要自动执行的话就用触发器,同一个实例下库和库访问,只要加上select * from [库名].[架构名].[表名]这样的格式即可。2005的话可以这样一次性执行:
insert into b.dbo.tb
select *
from a.dbo.tb a
where not exists (select 1 from b.dbo.tb b where a.主键=b.主键)
------解决方案--------------------
同一台服务器上的A数据库和B数据库的话,直接在B数据库上执行
insert into B..tb(col1,col2) select col1,col2 from A..tb  where not exists(select 1 from B..tb)

如果是实时需要执行的话,在A库的表上创建一个触发器

如果是定时执行的话,那就创建一个JOB定时执行插入操作
------解决方案--------------------
insert into B.dbo.BB
select *
from A.dbo.AA a
where not exists (select 1 from b.dbo.tb b where a.主键=b.主键) 
------解决方案--------------------
添加的时候给定数据库表的全地址 
例如 你所说的A数据库中AA表  可以写成 A.dbo.AA 或者 A..AA 都可以
下面是你要的语句:
insert into B.dbo.BB
 select *
 from A.dbo.AA a
 where not exists (select 1 from B.dbo.BB b where a.主键=b.主键)  
------解决方案--------------------
搞个发布订阅就是了。