首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

一个Dts工程题,还是很有难度的,待

2012-01-01 
请教大家一个Dts工程题,还是很有难度的,在线等待最近学习DTS,有很多不懂的知识,其中有一道工程题:有2个表:

请教大家一个Dts工程题,还是很有难度的,在线等待
最近学习DTS,有很多不懂的知识,其中有一道工程题:


有2个表:table_a和table_b。
他们的结构都是相同的,即:
(
  id             int                     primary   key,
  name         varchar(50),      
  date         datetime
)

id主键
date用来记录table_a变化时间,即插入新行、更改name,date始终取当前值getdate()。

现在假定table_a不允许删除,我想table_a与table_b同步,即table_a里面有的行,而table_b里面没有,则插入table_b;
如果table_a.name有更改,则更改相应的table_b.name。如何用数据转换服务(DTS)来实现呀?


[解决办法]
up
[解决办法]
做觸發器啊﹗﹗
[解决办法]
DTS不是用来做这个的吧?应该是楼上说的触发器才对
[解决办法]
要保持同步,最好在a上建觸發器
[解决办法]
在DTS直接下SQL command好了,拖一個SQL connetcion,一個Execute SQL Task


update table_b
set name=table_a.name
from table_b,table_a
where table_b.id=table_a.id

insert into table_b
select * from table_a
where not exists(select 1 from table_b where id=table_a.id)
[解决办法]
......
這跟數據庫是不是同一個沒有關係啊
DTS里的sql connetion,別說不同db了,就是不同server也可以聯啊.
另外,同一server不同db的話,
只需將table_a/table_b 寫成 northwind.dbo.table_a/tempdb.dbo.table_b即可.

热点排行