|
|
|
Три отдельных триггера или один общий ???
|
|||
|---|---|---|---|
|
#18+
Было у меня три триггера на пересчет итогов: After INSERT execute procedure UPDATE_CLISUPPL NEW.CLIDOGID, 0.00, NEW.SUPPLSUMM; After Update execute procedure UPDATE_CLISUPPL OLD.CLIDOGID, OLD.SUPPLSUMM, 0.00 ; execute procedure UPDATE_CLISUPPL NEW.CLIDOGID, 0.00, NEW.SUPPLSUMM; After Delete execute procedure UPDATE_CLISUPPL NEW.CLIDOGID, 0.00, NEW.SUPPLSUMM; Посмотрел я на них и подумал: "Раз они так похожи - не сделать ли один общий триггер". AFTER INSERT OR UPDATE OR DELETE execute procedure UPDATE_CLISUPPL OLD.CLIDOGID, OLD.SUPPLSUMM, 0.00 ; execute procedure UPDATE_CLISUPPL NEW.CLIDOGID, 0.00, NEW.SUPPLSUMM; В процедуре сразу контролируется IF(CLIDOGID IS NULL) THEN EXIT; Плюсы очевидны - в три раза меньше писать, при траблах одним махом деактивировать... А могут ли возникнуть какие-то подводные камни при использовании объединеного триггера ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2003, 09:29 |
|
||
|
Три отдельных триггера или один общий ???
|
|||
|---|---|---|---|
|
#18+
Самая большая проблема - обратная совместимость. Если разрабатываешь под FB15, то он не для всех платформ ещё есть, если я не ошибаюсь... То же самое с дятла на FB1 не перенесётся, если под юнихом будешь сервер держать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2003, 16:18 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=510&tid=1580170]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
42ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 322ms |

| 0 / 0 |
