|
|
|
| В общем мне нужна в основном теория. Вопрос такой. Например, при выполнении запроса DELETE FROM news WHERE id_news = 1 я хочу чтобы из таблицы comments все комментарии где столбец id_news равен 1. То есть неважно из под чего выполянется запрос, будьте из PMA или скрипта или самой консоли. Важно то что может ли MySQL это делать. Может быть трегером можно. Важно то что я хочу добиться того чтобы при удалении новости автоматически удалялись все записи с данным id у подчиненых таблицах. | |
|
|
|
|
|
|
|
для: admiral
(25.01.2010 в 00:58)
| | Каждая новость(документ) имеет свой id (автоинкремент ) ,который связан с ключом таблицы комментариев (Id_news) (не автоинкримент) [внешний ключ].
те все комментарии к одной новости(статьи ) имеют одинаковый Id_news (внешний ключ).
так в чём проблема удалить все эти комментарии зная id удаляемой новости (статьи ,документа) ?
Если таблиц много ,относящихся к данному документу ,то должна существовать таблица связи данного документа с его свойствами ( другие связанные таблицы ) ,алгоритм удаления точно такой.
Таблицы MyISAM | |
|
|
|
|
|
|
|
для: oliss
(25.01.2010 в 18:54)
| | В таблицах InnoDB при установленном ограничении чужого ключа ON DELETE CASCADE сервер сам будет удалять строки с чужими ключами из той таблицы, которая ссылается на таблицу - хранилище удаляемой пользователем записи (с исчезающим первичным ключом) | |
|
|
|
|
|
|
|
для: Trianon
(25.01.2010 в 20:03)
| | класс!!!! я в шоке!!! MySQL блин..... | |
|
|
|
|
|
|
|
для: admiral
(26.01.2010 в 00:09)
| | Может, воды? | |
|
|
|
|
|
|
|
для: Trianon
(26.01.2010 в 00:29)
| | ага))))) Всю завтра куплю большой плакат дельфина на стену!!!! | |
|
|
|
|