日期:2014-05-18  浏览次数:20448 次

关于sql数据同步问题
有两个数据库DB_A,DB_B,两个数据在同一台服务器上面,现在DB_A有一张表TB_A,现在通过触发器增、删、改后数据同步到DB_B中的TB_B中,TB_A与TB_B表结构相同。(这个能解决)
首先DB_A数据库中TB_A表结构拷贝到DB_B中运行生成TB_B表,然后在写触发器。
主要是关于下面这个问题:
但是现在由于TB_A的字段是经常性的增加或者减少,先前的触发器的字段都是写死的,TB_A字段增加后就得改触发器和重新创建或者新增TB_B表结构,
现在请问怎样能够让TB_A增加字段后TB_B字段也跟着增加,
同时数据增、删、改后也能同步到TB_B表中。


------解决方案--------------------
在DB_B建试图不行吗?
create view TB_B
AS
select * from DB_A.dbo.TB_A
------解决方案--------------------
用试图查询不是更简单。
------解决方案--------------------
同一台服务器上,视图是更好
------解决方案--------------------
探讨
引用:

同一台服务器上,视图是更好

比如说A表有一条记录abcde 通过视图过来也是abcde
但是用触发器就会同步这条数据abcde同时为这条记录加一个字段变成abcdef

------解决方案--------------------
create view TB_B --视图名代替表明
AS
select * from DB_A.dbo.TB_A
------解决方案--------------------
在同一个数据库服务器上,可以在A库上加一个 数据库(ddl)触发器 就可以解决,A库上表 字段的 增、删、改了。但是触发器好像还得手动去改(里面的字段)。