powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Удаление через триггер в одной таблице
8 сообщений из 8, страница 1 из 1
Удаление через триггер в одной таблице
    #38829877
Stark3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, уважаемые!

Нужно удалить запись из таблицы, но давать право на удаление не хочу

Решил сделать через триггер и проверку статуса
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
CREATE 
	DEFINER = 'st'
TRIGGER bd.after_update_del_rqst
	AFTER UPDATE
	ON bd.table
	FOR EACH ROW
BEGIN
  IF NEW.statys = 'Удалена' then
    DELETE FROM bd.table WHERE nomer = OLD.nomer;
  End IF;
END


Но, как и следовало ожидать, ошибка "Can't update table in stored function/trigger because it is already used by statement which invoked this stored function/trigger"

Подскажите, это можно как-то обойти?
...
Рейтинг: 0 / 0
Удаление через триггер в одной таблице
    #38829880
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stark3но давать право на удаление не хочуКакая разница есть право или нет, если результат одинаковый?

Попробуйте сделать процедурой. Ей можно назначить права создателя, у которого есть права на удаление записей.
...
Рейтинг: 0 / 0
Удаление через триггер в одной таблице
    #38829885
Stark3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft, ну скажем, мне не охота давать всем сотрудникам новое право и нужно минимизировать количество запросов в клиенте :) Вобщем, мне просто нужно сделать это через триггер
...
Рейтинг: 0 / 0
Удаление через триггер в одной таблице
    #38829895
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stark3мне не охота давать всем сотрудникам новое правоНе надо всем. Надо только тем, кому надо.Stark3минимизировать количество запросов в клиентеПроцедура.
Stark3мне просто нужно сделать это через триггерНикак.

Если удалять не обязательно мгновенно, то можно по расписанию периодически удалять все записи в таблице, у которых statys = 'Удалена'.
...
Рейтинг: 0 / 0
Удаление через триггер в одной таблице
    #38829901
Stark3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не надо всем. Надо только тем, кому надо
так это все и есть)

авторПроцедура
Во-первых, это тоже запрос - вызов хп. С триггерами ничего не надо
Во-вторых, на хп тоже ошибка

авторЕсли удалять не обязательно мгновенно, то можно по расписанию периодически удалять все записи в таблице, у которых statys = 'Удалена'
не вариант
...
Рейтинг: 0 / 0
Удаление через триггер в одной таблице
    #38829909
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stark3авторПроцедура
Во-первых, это тоже запрос - вызов хп. С триггерами ничего не надоКак был один запрос, так и остался. Только вместо UPDATE стал вызов процедуры.
Stark3Во-вторых, на хп тоже ошибкаНу значит что-то неправильно написано. Показывайте.
...
Рейтинг: 0 / 0
Удаление через триггер в одной таблице
    #38829921
Stark3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft, а это я немножко затупил)
вы оказались правы во всем, спасибо! :)
...
Рейтинг: 0 / 0
Удаление через триггер в одной таблице
    #38830172
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так у него ошибка была - он в тригере пытаеться менять туже таблицу, на которой тригер сработал...так сказать замкнутый круг получился...
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Удаление через триггер в одной таблице
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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