Получить значение поля перед его удалением - PullRequest
0 голосов
/ 14 апреля 2011

У меня есть две категории таблиц (иерархическая структура) и вложение, которые имеют отношения вместе.

delete  from category where lft between @left and @right; 

и я хочу удалить из вложения, связанного с этими категориями!

Что следуетЯ делаю?

Ответы [ 2 ]

1 голос
/ 14 апреля 2011

Попробуйте:

delete c,a category c 
 join attachment a on c.id=a.category_id 
 where c.lft between @left and @right
1 голос
/ 14 апреля 2011

Я бы предложил использовать FOREIGH KEYS с ограничениями InnoDB MySQl и Foreign key и определить опцию ON DELETE - CASCADE для ключа, связывающего категории и таблицы вложений.

Второй просто DELETE FROM attachments WHERE category_id BETWEEEN @left AND @right;

...