|
|
|
Что-то я намудрил с триггером
|
|||
|---|---|---|---|
|
#18+
CREATE TRIGGER t_firm ON dbo.firm FOR UPDATE, DELETE AS BEGIN -- Обновляем баланс фирмы-родителя -- UPDATE firm SET usd = f.usd + i.usd FROM firm f, inserted i WHERE f.firm_id = i.p_id UPDATE firm SET usd = f.usd - i.usd FROM firm f, deleted i WHERE f.firm_id = i.p_id -- Обновляем баланс категории -- UPDATE firm_cat SET usd = f.usd + i.usd, bln = f.bln + i.bln FROM firm_cat f, inserted i WHERE f.cat_id = i.cat_id UPDATE firm_cat SET usd = f.usd - i.usd, bln = f.bln - i.bln FROM firm_cat f, deleted i WHERE f.cat_id = i.cat_id END Все корректно отрабатывается только на изменяемой строке. А поидее должен пересчитываться и баланс категории фирмы-родителя. Где грабли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2002, 09:14:01 |
|
||
|
|

start [/forum/topic.php?fid=46&tid=1820438]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
55ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
20ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 306ms |

| 0 / 0 |
