日期:2014-05-18 浏览次数:20701 次
--触发器的操作1 create table 化验室纱组(本厂编号 int,客户 int,色号 int,纱支 int) create table 化验室布组(本厂编号 int,客户 int,色号 int,布类 int) go create trigger my_trig on 化验室纱组 for insert ,update ,delete as if not exists(select 1 from inserted) delete 化验室布组 from deleted t where 化验室布组.本厂编号 = t.本厂编号 else if not exists(select 1 from deleted) insert into 化验室布组(本厂编号 ,客户 ,色号) select 本厂编号 ,客户 ,色号 from inserted else update 化验室布组 set 客户 = t.客户 , 色号 = t.色号 from inserted t where 化验室布组.本厂编号 = t.本厂编号 go --1、insert 对化验室纱组插入数据,然后查看化验室布组表的数据 insert into 化验室纱组 values(1 , 2 , 3 , 4) insert into 化验室纱组 values(5 , 6 , 7 , 8) go select * from 化验室布组 /* 本厂编号 客户 色号 布类 ----------- ----------- ----------- ----------- 1 2 3 NULL 5 6 7 NULL (所影响的行数为 2 行) */ --2、update , 更改化验室纱组表中本厂编号=1的色号=6 update 化验室纱组 set 色号 = 6 where 本厂编号 = 1 go select * from 化验室布组 /* 本厂编号 客户 色号 布类 ----------- ----------- ----------- ----------- 1 2 6 NULL 5 6 7 NULL (所影响的行数为 2 行) */ --3、delete 化验室纱组表中本厂编号=1的那条数据 delete from 化验室纱组 where 本厂编号 = 1 go select * from 化验室布组 /* 本厂编号 客户 色号 布类 ----------- ----------- ----------- ----------- 5 6 7 NULL (所影响的行数为 1 行) */ drop table 化验室纱组 , 化验室布组
------解决方案--------------------
1、缓慢变化维度 数据流
2、update、insert 执行sql任务
3、 service broker ,触发存储过程,实时性高,但是如果数据量大分解xml需要时间
------解决方案--------------------
也可以考虑用SQLServer的发布与订阅功能,有实时性较高的方案。
------解决方案--------------------
请说明更新频率
------解决方案--------------------
SSIS主要是的用途之一:数据清洗,不过楼主要求的实时性,这样的话就对性能提出了一个更高的要求,楼主需要衡量之后再考虑是否用SSIS。
------解决方案--------------------
一般维度处理采用渐变维度是可以的,大维度就可能不行了。