SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 13.05.2009 22:41:36

aka MAC
Участник
Зарегистрирован: 13.05.2009
Сообщений: 5

Триггер, запрещающий вставку

Подскажите, пожалуйста, как написать.
В MS SQL есть триггеры INSTEAD OF и можно делать ROLLBACK внутри триггера.
В MySQL на ROLLBACK ругается. Как сделать по-другому?

Неактивен

 

#2 14.05.2009 16:41:17

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: Триггер, запрещающий вставку

К сожалению, в триггерах MySQL сейчас нет возможности корректно откатить транзакцию.
Самое лучшее (несмотря на то, что оно ужасно) решение сейчас — сделать какую-то ошибку.

Например, так:
create trigger bi_a before insert on a for each row insert into you_cannot_insert_into_this_table_because_of_the_trigger_check values ();

Табличка с длинным названием, конечно, не должна существовать.

Да, я знаю, выглядит как костыль. Костыль и есть sad

Неактивен

 

#3 14.05.2009 21:25:57

aka MAC
Участник
Зарегистрирован: 13.05.2009
Сообщений: 5

Re: Триггер, запрещающий вставку

Думал, есть какое-нибудь другое решение. Про это слышал.

Но все равно, спасибо!

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson