有关触发器插入数据修改,更新,赋值,的问题,在两个表中(在线急等)
有两个相关联的表,比如A表和B表. A表是一直有插入的数据,B表是固定的, 他们通过A.a = B.b1相关联在一起.通过A.a查找B表中的数据.
现在要写一个触发器,比如当往A表中插入的数据如果是 A.a = ?000124 时,就要取出 '? '号,(不是的话就不处理)然后在取到问号后面的数字 '000124 ',使A.a = B.b1(这时B表中有个字段值和他才相同) 这时通过B.b1从B表中找出另一字段值B.b2,最后要把 B.b2 赋值给 A.a(使A.a = B.b)
现在要写个触发器,就要实现这功能.
第一次写触发器, 请大家指教一下~~
我写了个,可是不对,他把原来在表中的数据都修改了,我要的是只修改正在插入的数据
------解决方案--------------------LZ貼出A,B表的結構,最好加上點數據,然後說出需要的結果,不然還真很難理解啊
------解决方案--------------------多了個,號
Create Trigger Update_A On A
Instead Of Insert
As
Begin
Insert A
Select
stu_name,
type,
(Case Left(T1.src, 1) When '? ' Then T2.B2 Else T1.src End) As src,
startTm,
endTm,
value --注意這裡,如果還有別的字段,在後面繼續加上
From
Inserted T1
Left Join
B T2
On Stuff(T1.src, 1, 1, ' ') = T2.B1
End
GO