| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MySQL > Удаление из таблицы |
| Автор: newnata 22.6.2008, 11:46 |
| У меня есть главная таблица(Студенты) и две таблицы простых(Языки и Данные).Как сделать так что если я удаляю из таблицы например Языки ,то удалялась запись и в таблице Студенты. procedure TForm1.Button10Click(Sender: TObject); var s:string; begin if MessageDlg('Вы уверены?', mtWarning, mbOkCancel, 0)=mrOk then begin s:='delete from styz where id='+ADOQuery1.Fields.Fieldbyname('id').AsString; ADOConnection1.Execute(s); ADOQuery1.Close; ADOQuery1.Open; end; end; |
| Автор: Magnifico 22.6.2008, 12:07 |
| разве в mysql нет каскадного удаления? http://dev.mysql.com/doc/refman/5.0/en/innodb-foreign-key-constraints.html |
| Автор: Бонифаций 24.6.2008, 15:08 |
| не для всех storage engines. Для myisam к примеру referential integrity не фунгует... так что надо innodb ставить чтобы было каскадное удаление |
| Автор: MuToGeN 25.6.2008, 01:17 |
| Кстати, по умолчанию всегда используется именно MyISAM, наиболее "родной" для MySQL движок хранения данных. InnoDB обычно бывает просто вырублен в конфиге (но не всегда, в зависимости от версии). |