Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Несколько триггеров для одной операции или один? / 13 сообщений из 13, страница 1 из 1
23.09.2002, 15:40:37
    #32052403
Jimmy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
Уважаемые коллеги!

Вопрос скорее методологический: что проще (эффективней) - создать один сложный триггер на операцию (напр. for delete ) или использовать несколько простых?

Спасибо.
...
Рейтинг: 0 / 0
23.09.2002, 16:24:07
    #32052418
MiCe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
если важна последовательность - то лучше в одном все делать...
...
Рейтинг: 0 / 0
23.09.2002, 16:29:14
    #32052423
Jimmy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
Последовательность неважна. Нужно просто проверить ряд условий.

Замечания: триггеры генерятся программно, поэтому предпочтительнее было бы создавать пакет простых, нежели увязывать все в один сложный. Но если это существенно влияет на эффективность (производительность) , то будем стараться :0)
...
Рейтинг: 0 / 0
23.09.2002, 17:29:26
    #32052448
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
Рационального объяснения у меня нет, однако думаю, что лучше несколько простых, т.к. план выполнения для каждого простого триггера сделать оптимизатору проще будет.
...
Рейтинг: 0 / 0
23.09.2002, 17:38:26
    #32052454
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
Хотел сказать, что сделать план более оптимальным.
...
Рейтинг: 0 / 0
23.09.2002, 17:53:08
    #32052457
MiCe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
а я считаю что наоборот....
план выполнения расчитывается один раз и потом сохраняется....
затраты на запуск тригера всетаки существуют.....
если обновлений таблицы много - это будет существенно ....
...
Рейтинг: 0 / 0
23.09.2002, 18:19:21
    #32052473
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
2 MiCe

А если в триггере будет приблизительно такой код:
Код: plaintext
1.
2.
3.
4.
5.
if условие1 then
   select тратата

if условие2 then
   update тратата


Какой будет план? По первому условию или по второму? И что будет когда с последующим запуском истина будет для другого выражения?
...
Рейтинг: 0 / 0
23.09.2002, 18:26:35
    #32052479
MiCe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
план учитывает ветвление.....
...
Рейтинг: 0 / 0
23.09.2002, 19:11:45
    #32052494
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
Думаю истина где-то посередине.
С трудом представляю себе таблицу с 100-ей триггеров, каждый из пары команд
Но также с трудом представляю себе триггер с 100-ей if-ов и текстом на десяток страниц (хотя 100-ей еще может и ничего).
...
Рейтинг: 0 / 0
24.09.2002, 10:37:03
    #32052565
Jimmy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
Спасибо всем. Вопрос закрыт.
...
Рейтинг: 0 / 0
24.09.2002, 10:56:51
    #32052578
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
план учитывает ветвление.....

Каким образом? подробнее плиз.
...
Рейтинг: 0 / 0
24.09.2002, 11:00:32
    #32052581
MiCe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
2 Genady
если б план не учитывал ветвление - выполнение почти всех процедур было бы не эффективно....
а какая разница как он это делает? это не принципиально...
...
Рейтинг: 0 / 0
24.09.2002, 11:32:18
    #32052598
Genady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько триггеров для одной операции или один?
2 MiCe
План не учитывает ветвления, просто если сработал запрос в первом ифе, то на него строится план и сохраняется в кэше, а если во втором, то ессно на него строится план.
В принципе Вы правы, выигрыша разделение на мелкие триггера, кроме удобства чтения и модификации не принесет.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Несколько триггеров для одной операции или один? / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]