|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
Здравствуйте. Имеется две таблицы: таблица-справочник районов Rajons с сокращенными названиями short_name и полными названиями full_name, и таблица состояний водителей VDL, в которую пишется район Location. Программа пишет в VDL.Location то короткое название района, то полное. Причины такого поведения уходят глубоко в прошлое. Сама программа обрабатывает и длинные и короткие имена районов, но встала задача в базе хранить только длинные имена. Программу на данный момент доработать нельзя. Я написал триггер Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
По моей задумке, если новое значение Location короткое, то нужно найти полное название из таблицы районов (а полные названия начинаются все с короткого в скобках, например Ц = (Ц)ентр, 2 = (2)-Сады-2 ) И вот загвоздка в том, что при вводе короткого названия вручную или даже после запроса Код: sql 1.
все отрабатывает и переименовывается в длинное название. А из программы почему-то насильно вписываются короткие названия. Почему триггер может не срабатывать? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 16:49 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
slandПочему триггер может не срабатывать? Триггер не может не срабатывать. Вопрос в том какую хрень в таблицу пишет программа, что select ничего не возвращает. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 16:54 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
Ага, это уже немного радует. А то я уже начинал беспокоиться, что триггер читает данные, которые неподтверждены или вообще не может прочитать данные. В общем, уже не знаю что и думать. Но какую бы хрень программа не ложила, после запроса Код: sql 1.
те же самые значения переименовываются в длинные. Вопрос в том, что может мешать триггеру сразу при вставке короткого названия прописать длинное? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 17:04 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
sland, если вставка это insert то не удивительно ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 17:07 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
Симонов Денис, нет - не вставка. в VDL текущее состояние водителей, в программе поле Location обновляется для заданного водителя. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 17:18 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
пробовал select поменять на такой Код: sql 1.
- не помогает. Например, есть short_name='А' и full_name='(А)лмазный'. Программа пишет в Location 'А', а триггер его не меняет на длинное название. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 17:22 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
Задлянафига эвристика, если можно просто выбирать "длинное имя по короткому". ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 17:35 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
slandнет - не вставка. в VDL текущее состояние водителей, в программе поле Location обновляется для заданного водителя. Трассировку включал? Уверен, что эта программа не делает delete+insert? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 17:38 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, да, уверен: delete+insert нет. ID записей не меняются. Имеется ввиду трассировка триггера? Так он по шагам отрабатывает и все. А если другая трассировка - то как включить/использовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 17:46 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
slandА если другая трассировка - то как включить/использовать? fbtracemgr или аналогичная тулза в свежих версиях эксперта. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 17:47 |
|
Не срабатывает триггер
|
|||
---|---|---|---|
#18+
Спасибо всем за оперативную помощь. Кажется вот это все-таки работает: Код: sql 1.
Почему не работало по-началу - загадка. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2017, 18:06 |
|
|
start [/forum/topic.php?fid=40&tid=1561631]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
161ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 305ms |
total: | 553ms |
0 / 0 |