Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Триггер, record old not assigned yet 
:(
    Опции темы
SneG0K
Дата 26.12.2010, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Max Mara
***


Профиль
Группа: Завсегдатай
Сообщений: 1887
Регистрация: 1.12.2007
Где: Wis Dells

Репутация: нет
Всего: 54



Есть триггерная ф-ция
Код

DECLARE
    fields record;
    user_type text;
BEGIN
    SELECT user_type
    FROM users.users 
    WHERE id = old.id;
    FOR fields IN
        SELECT field_id 
        FROM dicts.fields 
        WHERE dict = user_type
    LOOP
        DELETE 
        FROM dicts.fields_values 
        WHERE item_id = old.id 
            AND field_id = fields.field_id;
    END LOOP;
    RETURN OLD;
END;

И триггер, который вызывает эту функцию перед удалением записи из таблицы
Код

CREATE TRIGGER full_delete BEFORE DELETE ON users FOR EACH STATEMENT EXECUTE PROCEDURE "deleteUserDict"()


И вот при попытке удаления пишет такую вот гадость
Record old not assigned yet
Что делать?
PM WWW Skype   Вверх
LSD
Дата 29.12.2010, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 3
Всего: 538



Дык чего же ты хочешь создаешь STATEMENT триггер и хочешь в нем получить доступ к ROW.
Код

CREATE TRIGGER full_delete BEFORE DELETE ON users FOR EACH ROW EXECUTE PROCEDURE "deleteUserDict"()



--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PostgreSQL | Следующая тема »


 




[ Время генерации скрипта: 0.0409 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.