Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
dimon71 Member Откуда: Сообщений: 172 |
Добрый день уважаемые. Есть таблица ID (автоинкремент, ключ) и Name (Текст) Мне нужно чтобы при добавлении новой записи с новым именем, автоматически добавлялись еще записи с модифицированным именем. К примеру после вставки строки где Name - test, должны добавиться строки #test, @test Как я понял в триггере установленном на insert этой же таблицы такое реализовать не удасться? |
18 окт 12, 09:42 [13338259] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47047 |
Очень даже можно. Надо только озаботиться повторным вызовом этого же триггера. Во-первых, можно запретить рекурсивные вызовы триггеров (Database->Options->Recursive Triggers->Enabled). Во-вторых, в триггере можно проверять уровень вложенности этого триггера (TRIGGER_NESTLEVEL()) |
||
18 окт 12, 09:53 [13338325] Ответить | Цитировать Сообщить модератору |
dimon71 Member Откуда: Сообщений: 172 |
SQL 2000 У меня такой триггер просто игнорируется. Не работает никак. Т.е если в триггере указана запись в эту же таблицу, то триггер просто игнорируется. В другую таблицу пишет. Я и подумал, что по логике все верно. Погуглил - пишут о похожей картине. Ну раз есть другое мнение - покопаюсь. Спасибо. |
18 окт 12, 09:58 [13338363] Ответить | Цитировать Сообщить модератору |
PaulYoung Member Откуда: Москва Сообщений: 2565 |
dimon71, приведите код Вашего триггера, а там видно будет... |
18 окт 12, 10:08 [13338436] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47047 |
Что там у Вас, отсюда не видно |
||
18 окт 12, 10:19 [13338527] Ответить | Цитировать Сообщить модератору |
dimon71 Member Откуда: Сообщений: 172 |
Все заработало. Мои бока. Прошу прощения за беспокойство. Спасибо отозвавшимся. Просто пытался защититься от рекурсивного цикла этого триггера и перестарался. |
18 окт 12, 10:38 [13338689] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |