|
0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 118
|
||||||
Понять, почему не срабатывает триггер20.12.2014, 11:20. Показов 7317. Ответов 15
Метки нет (Все метки)
Доброго времени суток. Помогите понять почему не отрабатывает триггер, потому что я даже не знаю с чего начать. Триггер стоит на одной таблице, но читает другую, если там находиться нужная ему запись, он делает изменения в той таблице в которой стоит.
Вот его код:
Сумбурно объяснил наверное, но по другому пока не знаю как. Спасибо.
0
|
||||||
| 20.12.2014, 11:20 | |
|
Ответы с готовыми решениями:
15
JQuery!? Не могу понять почему цикл не срабатывает? Не срабатывает условие в цикле while не могу понять почему Не могу понять почему не срабатывает запрос к базе mysql |
|
63 / 63 / 21
Регистрация: 08.02.2013
Сообщений: 262
|
|
| 20.12.2014, 11:40 | |
|
выложите скрипт создания триггера
0
|
|
|
0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 118
|
||||||
| 20.12.2014, 11:46 [ТС] | ||||||
|
nixon93nixon,
0
|
||||||
|
63 / 63 / 21
Регистрация: 08.02.2013
Сообщений: 262
|
||||||
| 20.12.2014, 12:16 | ||||||
|
добавь в начало исполняемого кода триггера это
0
|
||||||
|
0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 118
|
||
| 20.12.2014, 12:26 [ТС] | ||
|
0
|
||
|
63 / 63 / 21
Регистрация: 08.02.2013
Сообщений: 262
|
|
| 20.12.2014, 12:57 | |
|
bsd9, ну тут уж я не знаю почему.
может все-таки данных нет, может не по тем полям связывайте, я же базу не вижу
0
|
|
|
0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 118
|
|
| 20.12.2014, 13:01 [ТС] | |
|
nixon93nixon, дело в том, что получается, что какие-то он там записи находит, какие-то нет. Так можно как отследить это, например профайлером? Триггер не вчера написан и работает уже год, а с этой проблемой только вчера столкнулся.
0
|
|
|
63 / 63 / 21
Регистрация: 08.02.2013
Сообщений: 262
|
|
| 20.12.2014, 13:07 | |
|
честно, не знаю, чем профайлер поможет, но можно реагировать, например записывать в какой-нибудь лог, на случае когда UPDATE не обработал не единой записи
а потом исходя из данных в логе смотреть, почему и как
0
|
|
|
0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 118
|
|
| 20.12.2014, 13:17 [ТС] | |
|
nixon93nixon, а это трудно реализовать ? Я так сходу не сумею. Еще такой вопрос, может быть так, что событий настолько много, что он не успевает срабатывать ? Может он в этой табличке не успевает найти эту запись ?
0
|
|
|
63 / 63 / 21
Регистрация: 08.02.2013
Сообщений: 262
|
|||
| 20.12.2014, 13:21 | |||
![]() возвращает кол-во обработанных строк. просто проверка после Update, если больше 0 то ничего не делать, если =0, то куда-то записать данные из inserted, чтобы потом их использовать для анализа p.s. возможно, еще есть варианты решения проблемы, но я о таких не знаю
0
|
|||
|
0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 118
|
|||
| 20.12.2014, 13:32 [ТС] | |||
|
0
|
|||
|
107 / 107 / 5
Регистрация: 28.12.2012
Сообщений: 207
|
|
| 20.12.2014, 13:39 | |
|
Триггер срабатывает всегда (при вставке в вашем случае), но не всегда он выполняет update, т.к в
"INNER JOIN [dbo].[No15Sens_devices] AS No15 ON No15.device_code=i.device_code" может не быть связующих строк.. смотрите что вставляете в таблицу SYS_DEV_DirtyData в колонку device_code и смотрите есть ли такая запись в No15Sens_devices
0
|
|
|
63 / 63 / 21
Регистрация: 08.02.2013
Сообщений: 262
|
||||||
| 20.12.2014, 13:40 | ||||||
|
давайте заново, вставьте в триггер это и попробуйте вставить через MS SQL Studio
0
|
||||||
|
1116 / 761 / 183
Регистрация: 27.11.2009
Сообщений: 2,272
|
|||||||
| 20.12.2014, 16:35 | |||||||
|
Что там у вас с настройками рекурсивного вызова триггера?
Зачем апдейтить только что проапдейченные записи ещё раз? Почему нельзя это сделать в первом UPDATE ?
Эквивалентно потому, что в момент выполнения триггера AFTER UPDATE записи в таблице уже изменены и в точности соответствуют inserted
0
|
|||||||
|
0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 118
|
||||||
| 20.12.2014, 20:37 [ТС] | ||||||
|
asd24, там еще одно условие CASE WHEN i.digit_sens_num&POWER(2,15-1). Вообщем опытным путем я выяснил, что триггер не реагирует на одну конкретную запись. Т.е он ее "не видит" внутри таблицы No15.
nixon93nixon, хорошо, сейчас попробую. iap, дело в том, что автор триггера не я. Я отнесся к этому по принципу "работает - не трогай". Поэтому ответить на вопрос зачем я пока не могу, но скажу, что приложение у нас специфическое и "странненькое". Попробую сделать как Вы говорите. Добавлено через 2 часа 34 минуты UPDATE.
0
|
||||||
|
0 / 0 / 0
Регистрация: 01.12.2014
Сообщений: 118
|
|||||||||||
| 27.12.2014, 11:49 [ТС] | |||||||||||
|
UPDATE 2
Рано радовался. Проблема появилась вновь. Запись при вставке в табличку должна обнуляться триггером, но она этого не делает. Ну или триггер не делает. Добавлено через 20 часов 58 минут nixon93nixon, сделал так: перед
0
|
|||||||||||
| 27.12.2014, 11:49 | |
|
Помогаю со студенческими работами здесь
16
Не срабатывает RS-триггер Параметры SqlBulkCopyOptions: не срабатывает триггер Не срабатывает триггер между ComboBox'ами
Не правильно срабатывает триггер в теге style Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет
значение производной при заданном х
Логарифм записывается как: (x-2)log(x^2+2) -. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|