Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
Добрый вечер, коллеги Microsoft SQL Server 2008 R2 (SP3) - 10.50.6000.34 (X64) Aug 19 2014 12:21:34 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) Кто может объяснить - почему срабатывает триггер , хотя Update не происходит Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Результат Код: plaintext 1. The command completed with no results returned ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:28 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
Компостеров, по тому что у вас срабатывает какой-то другой триггер? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:35 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
TaPaK, Триггер на таблицу agent для Update только один ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:39 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
А с чего вы решили, что триггер в описанной ситуации не должен срабатывать? В первом же абзаце в справке написано https://docs.microsoft.com/en-us/sql/t-sql/statements/create-trigger-transact-sql?view=sql-server-2017 DML triggers execute when a user tries to modify data through a data manipulation language (DML) event. DML events are INSERT, UPDATE, or DELETE statements on a table or view. These triggers fire when any valid event is fired, regardless of whether or not any table rows are affected. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:45 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
из-за условия update agent set info = 'aaas' where 1 = 2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:48 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
КомпостеровTaPaK, Триггер на таблицу agent для Update только один был напуган описанием результата.. AFTER триггер не срабатыват только в случае ошибки. Нормальная практика в начале всех триггеров проверять наличие записей в inserted/deleted ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:49 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
авторAFTER specifies that the DML trigger is fired only when all operations specified in the triggering SQL statement have executed successfully. All referential cascade actions and constraint checks also must succeed before this trigger fires. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:50 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
Компостеровиз-за условия update agent set info = 'aaas' where 1 = 2Ну как и предполагалось, справку никто не читал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:51 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
Т.е. сервер делает лишнюю операцию ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:56 |
|
||
|
Почему срабатывает триггер ?
|
|||
|---|---|---|---|
|
#18+
Компостеров, сервер делает как описано ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2018, 22:57 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39692695&tid=1689215]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
70ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 269ms |
| total: | 450ms |

| 0 / 0 |
