|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.12.2015, 17:02 | #11 | |
Пользователь
Регистрация: 22.12.2015
Сообщений: 17
|
Цитата:
А вот у меня еще такой вопрос, у меня есть еще одно таблица, и в ней есть поле product ID, они связаны при помощи внешнего ключа и то есть когда я удаляю запись из таблицы product, так же должна удалять запись и из другой таблицы, как это сделать? |
|
23.12.2015, 17:21 | #12 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Хм... Это нужно настраивать каскадное удаление.
Это от СУБД зависит, умеет она такое или нет.
I'm learning to live...
|
23.12.2015, 17:25 | #13 |
Пользователь
Регистрация: 22.12.2015
Сообщений: 17
|
для создания БД использовал СУБД FireBird
Мне в курсовом это точно надо как то сделать... |
23.12.2015, 20:05 | #14 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Э-э-эм... В огнептичке вроде есть возможность настройки каскада. Когда при удалении одной записи, из подчиненных таблиц удаляются с ней связанные.
Там вроде когда в базе настраиваешь внешние ключи есть опция Cascade... Вот чет типа такого... Безымянный.jpg Вот и займись изучением SQL команд создания внешних ключей. И почитай литературу про эти каскадные операции.
I'm learning to live...
|
23.12.2015, 20:50 | #15 |
Пользователь
Регистрация: 22.12.2015
Сообщений: 17
|
Спасибо за это) буду сейчас читать)
|
23.12.2015, 22:39 | #16 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
а если не сможете настроить каскадное удаление, то всегда есть запасной выход - можно ручками вызвать запрос с удалением записей сначала из дочерней таблицы, потом - из родительской.
Хотя, конечно, поручить это СУБД - это и проще и надежнее! |
23.12.2015, 23:32 | #17 |
Пользователь
Регистрация: 22.12.2015
Сообщений: 17
|
А какой-нибудь пример показать можете показать или кусочек кода, пожалуйста?!!
Последний раз редактировалось Stilet; 24.12.2015 в 09:31. |
24.12.2015, 08:24 | #18 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Перед удалением из основной таблицы делаете ещё один запрос на удаление данных: Код:
Цитата:
p.s. а что, каскадное удаление настроить не удалось?! |
||
24.12.2015, 15:59 | #19 |
Пользователь
Регистрация: 22.12.2015
Сообщений: 17
|
p.s. а что, каскадное удаление настроить не удалось?! [/QUOTE]
я просто не понял как его настроить( ну я в IBExpert в своей базе данных поставил свойство cascade у той таблицы в которой есть внешний ключ, и что надо дальше делать я не понял |
24.12.2015, 16:33 | #20 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А дальше при удалении записи в таблице главной из подчиненной удалятся все у которых ключевое поле содержит такое же значение автоматом.
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удаление повторяющихся слов. Delphi. Lazarus. | 0льга | Lazarus, Free Pascal, CodeTyphon | 6 | 14.12.2015 20:13 |
Удаление записей подчиненной таблицы | AVGRIN | SQL, базы данных | 1 | 07.07.2015 08:54 |
Delphi (Lazarus). Удаление нечётных элементов в дереве. | Ovenvan | Помощь студентам | 7 | 16.06.2015 10:57 |
Удаление и поиск записей из таблицы | Kolosok | Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) | 1 | 21.05.2015 19:30 |
Удаление, обновление записей из MySQL таблицы | xDjarx | БД в Delphi | 2 | 14.05.2008 13:36 |