powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Странное поведение триггера
7 сообщений из 7, страница 1 из 1
Странное поведение триггера
    #34236185
sea.s2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Зравствуйте все!!

Тут наткнулся на необычную для меня штуку в поведении триггера а именно

Простейший пример:

Создадим произвольную базу данных

Создадим 3 таблицы с 1 полем сделаем ему primary key

добавим по одной одинаковой записи в каждую из таблиц

Table1 свяжем с Table2
Table2 свяжем с Table3

На отношение Table1-> Table2 создадим триггер на удаление Cascade
На отношение Table2-> Table3 создадим триггер на удаление Restrict

Теперь все сохраним выйдем и зайдем ;))

Теперь же при попытке удаления записи из 1 таблицы триггер не заругается на то что
в 3 таблице есть такая же запись что и во 2-ой, а спокойно удалит запись из 1 таблицы и Cascade
со 2-ой таблицей не сработает.

Как же так? (P.S эта проблема решается если прeдварительно делать use table2)
Что ошибка в генераторе trigger procedur?
...
Рейтинг: 0 / 0
Странное поведение триггера
    #34236246
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VFP9SP1 - выдает сообщение об ошибке триггера. Все как положено. Никаких глюков
...
Рейтинг: 0 / 0
Странное поведение триггера
    #34236256
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверьте, а был ли создан триггер на вторую таблицу.
...
Рейтинг: 0 / 0
Странное поведение триггера
    #34237924
sea.s2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VFP 7.0

все триггеры работают нормально
...
Рейтинг: 0 / 0
Странное поведение триггера
    #34237926
sea.s2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А в таких условиях каких я описал нет
...
Рейтинг: 0 / 0
Странное поведение триггера
    #34239046
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Включай отладчик (он в триггера тоже заходит) и смотри, почему у тебя триггер на Restrict не отрабатывает. У меня нет 7 версии, поэтому воспроизвести проблему не могу.

Насколько я помню, в триггерах на Referential Integrity были глюки. Но вроде бы связанные с блокировкой. Там была некорректная строка при указании рабочей области. Сейчас точно не помню, но что-то вроде

UNLOCK ... IN lcNewWkArea

Так вот, надо было взять имя переменной в круглые скобки, т.е. написать

UNLOCK ... IN (lcNewWkArea)

Посмотри, может как раз на этой команде триггер "слетает"
...
Рейтинг: 0 / 0
Странное поведение триггера
    #34239048
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот нашел.

http://www.sql.ru/forum/actualthread.aspx?tid=242155#2147944

Правда это глюк VFP9 для младших версий такой строки нет. Но, все-равно, пройдись отладчиком. Похоже где-то тебя просто выбрасывает из триггера по ошибке. Что успел изменить, то успел. Хотя, не должно было такого быть.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Странное поведение триггера
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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