|
|
|
Что-то я намудрил с триггером
|
|||
|---|---|---|---|
|
#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&msg=32049584&tid=1820438]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 204ms |
| total: | 340ms |

| 0 / 0 |
