|
|
|
Можно ли в хранимой процедуре отключить триггер?
|
|||
|---|---|---|---|
|
#18+
У меня Interbase 6.5. Хочу сделать хранимую процедуру, которая отключала бы триггер, а потом включала его. Но похоже, что в процедуре слово Alter не понимается. Вроде бы должно быть какое/никакое решение! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2003, 14:51 |
|
||
|
Можно ли в хранимой процедуре отключить триггер?
|
|||
|---|---|---|---|
|
#18+
В IB вроде как нельзя изменять структуру БД из триггеров и процедур. >Вроде бы должно быть какое/никакое решение! Есть - изменение системных таблиц. Но возможность не документированая, а потому не безопасная. Такие вещи делать лучше на клиенте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2003, 16:08 |
|
||
|
Можно ли в хранимой процедуре отключить триггер?
|
|||
|---|---|---|---|
|
#18+
Hi! Интересный вопрос. Ответ - нет, нельзя. Во-первых, в хранимых процедурах не понмиается DDL, во-вторых, после изменения состояния триггера необходимо переконнектиться, чтобы сбросить кэш метаданных. Про системные таблицы - лучше не пробуй :) WBR, Alexey ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2003, 20:06 |
|
||
|
Можно ли в хранимой процедуре отключить триггер?
|
|||
|---|---|---|---|
|
#18+
Для управления триггерами из приложения поступил просто: добавил таблицу CREATE TABLE T_VKLTRIGGER ( N_VKLTRIGGER FIRST, VKLTRIGGER CHAR(1), OPISANIE CHAR(100)) а в триггрере, управляемом из приложения (что можно сделать и в процедуре)поставил условие: например CREATE TRIGGER T_TOVAROUT_GEN FOR T_TOVAROUT BEFORE INSERT POSITION 0 AS ..... .... DECLARE VARIABLE TMPVKLTRIGGER CHAR(1); begin ......................................................... select VKLTRIGGER from T_VKLTRIGGER where N_VKLTRIGGER=1 into :TMPVKLTRIGGER; ... ... ... if (:TMPVKLTRIGGER=1) then BEGIN ... ... END end; Управляя значением TMPVKLTRIGGER из доп таблицы можно отключить хоть весь триггер, хоть его часть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2003, 11:20 |
|
||
|
Можно ли в хранимой процедуре отключить триггер?
|
|||
|---|---|---|---|
|
#18+
То есть из процедуры можно делать тоже самоё ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2003, 21:50 |
|
||
|
Можно ли в хранимой процедуре отключить триггер?
|
|||
|---|---|---|---|
|
#18+
Спасибо за идею . На безрыбье, конечно, и рак рыба... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2003, 10:53 |
|
||
|
Можно ли в хранимой процедуре отключить триггер?
|
|||
|---|---|---|---|
|
#18+
2: Алексей Ковязин в каком смысле "не поминается DDL в процедурах"? Это чтож, я не могу таблицу создать из хранимой процедуры? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2003, 12:43 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=524&tid=1580721]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
43ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 350ms |

| 0 / 0 |
