Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: при удалении новости автоматически удалить все коментарии к ней
 
 автор: admiral   (25.01.2010 в 00:58)   письмо автору
 
 

В общем мне нужна в основном теория. Вопрос такой. Например, при выполнении запроса DELETE FROM news WHERE id_news = 1 я хочу чтобы из таблицы comments все комментарии где столбец id_news равен 1. То есть неважно из под чего выполянется запрос, будьте из PMA или скрипта или самой консоли. Важно то что может ли MySQL это делать. Может быть трегером можно. Важно то что я хочу добиться того чтобы при удалении новости автоматически удалялись все записи с данным id у подчиненых таблицах.

  Ответить  
 
 автор: oliss   (25.01.2010 в 18:54)   письмо автору
 
   для: admiral   (25.01.2010 в 00:58)
 

Каждая новость(документ) имеет свой id (автоинкремент ) ,который связан с ключом таблицы комментариев (Id_news) (не автоинкримент) [внешний ключ].
те все комментарии к одной новости(статьи ) имеют одинаковый Id_news (внешний ключ).
так в чём проблема удалить все эти комментарии зная id удаляемой новости (статьи ,документа) ?
Если таблиц много ,относящихся к данному документу ,то должна существовать таблица связи данного документа с его свойствами ( другие связанные таблицы ) ,алгоритм удаления точно такой.
Таблицы MyISAM

  Ответить  
 
 автор: Trianon   (25.01.2010 в 20:03)   письмо автору
 
   для: oliss   (25.01.2010 в 18:54)
 

В таблицах InnoDB при установленном ограничении чужого ключа ON DELETE CASCADE сервер сам будет удалять строки с чужими ключами из той таблицы, которая ссылается на таблицу - хранилище удаляемой пользователем записи (с исчезающим первичным ключом)

  Ответить  
 
 автор: admiral   (26.01.2010 в 00:09)   письмо автору
 
   для: Trianon   (25.01.2010 в 20:03)
 

класс!!!! я в шоке!!! MySQL блин.....

  Ответить  
 
 автор: Trianon   (26.01.2010 в 00:29)   письмо автору
 
   для: admiral   (26.01.2010 в 00:09)
 

Может, воды?

  Ответить  
 
 автор: admiral   (26.01.2010 в 00:42)   письмо автору
 
   для: Trianon   (26.01.2010 в 00:29)
 

ага))))) Всю завтра куплю большой плакат дельфина на стену!!!!

  Ответить  
 
 автор: oliss   (27.01.2010 в 11:37)   письмо автору
 
   для: admiral   (26.01.2010 в 00:09)
 

http://denis.in.ua/foreign-keys-in-mysql.htm

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования