Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.05;
Скачать: CL | DM;

Вниз

DELETE FROM   Найти похожие ветки 

 
Пётр   (2007-07-10 15:41) [0]

При нажатии на кнопку пытаюсь удалить запись в главной таблице БД:
ADOQuery.SQL.Text:="DELETE FROM Table WHERE pole=:n";
По полю pole она связано отношением один ко многим с подчинённой.
Удалить не удаётся - пишет, что в подчинённой таблице есть связанные записи.

Как решить этот вопрос?


 
Сергей М. ©   (2007-07-10 15:44) [1]


> Как решить этот вопрос?


Предпринять любые допустимые и доступные меры к предварительному удалению связанных записей в подчиненной таблице.

По-моему, это очевидно)


 
Anatoly Podgoretsky ©   (2007-07-10 15:46) [2]

По моему достаточно поверить сообщению и поступить в соответстии с ним.


 
Пётр   (2007-07-10 15:51) [3]

Я пытался придумать что-нибудь вроде:
ADOQuery.SQL.Text:="DELETE FROM Table, Table2 WHERE pole=:n";
)))

Вы подскажите - где хоть ответ искать?
- второй ADOQuery.SQL.Text:="DELETE... для подчинённой таблицы
- настройки БД в самом Access
- можно доработать существующий запрос
???


 
Галинка ©   (2007-07-10 15:56) [4]

ADOQuery.SQL.Text := "DELETE FROM SeconderyTableName WHERE pole=:n"
ADOQuery.SQL.Text := "DELETE FROM PrimaryTableName WHERE pole=:n"


 
Anatoly Podgoretsky ©   (2007-07-10 15:56) [5]

Это не код, а огрызок


 
Ega23 ©   (2007-07-10 15:56) [6]

можно наложить conatraint-модификатор on delete cascade
Не знаю, правда, поддерживает ли Access такое...

А в общем случае -
delete Table2 where pole=:n
delete Table1 where pole=:n


 
Пётр   (2007-07-10 16:19) [7]

> Галинка ©   (10.07.07 15:56) [4]
ADOQuery.SQL.Text := "DELETE FROM SeconderyTableName WHERE pole=:n"
ADOQuery.SQL.Text := "DELETE FROM PrimaryTableName WHERE pole=:n"


попробовал - это два запроса надо писать (
А можно как-нибудь, тогда адулять записи в главной, не удаляя при этом в подчинённой?


 
Сергей М. ©   (2007-07-10 16:21) [8]


> это два запроса надо писать


Это, конечно же, гораздо сложнее, чем сподобиться до информирования местной общественности о конкретно используемой тобой СУБД)


 
Пётр   (2007-07-10 16:21) [9]

> Пётр   (10.07.07 16:19) [7]
это два запроса надо писать


я имею ввиду: Close, Open, ... и прочее


 
Johnmen ©   (2007-07-10 16:23) [10]

Всё понятно...


 
Пётр   (2007-07-10 16:25) [11]

> Сергей М. ©   (10.07.07 16:21) [8]
информирования местной общественности о конкретно используемой тобой СУБД

По-моему я ничего не утаил:
> ADO
Access
Table ... По полю pole она связано отношением один ко многим с подчинённой.


 
Ega23 ©   (2007-07-10 16:25) [12]


> А можно как-нибудь, тогда адулять записи в главной, не удаляя
> при этом в подчинённой?


Можно. Для этого всего лишь нужно убрать constraint.
Вот только не кажется ли тебе, что ссылочную целостность совсем неглупые люди придумали?


 
Anatoly Podgoretsky ©   (2007-07-10 16:37) [13]


> А можно как-нибудь, тогда адулять записи в главной, не удаляя
> при этом в подчинённой?

Естественно - убери ссылочную целостность и можешь удалять только в главной, но приготовься к серьезным неприятностям, которые к тому очень трудно будет исправить.



Страницы: 1 вся ветка

Текущий архив: 2007.08.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.025 c
2-1183834648
Max_
2007-07-07 22:57
2007.08.05
шлюки со шрифтами...


15-1183813273
Тень отца Гамлта
2007-07-07 17:01
2007.08.05
Медленно удаляются файлы


15-1183748062
Курдль
2007-07-06 22:54
2007.08.05
Хочу на вас заработать бонус! Ну, пожалуйста!


15-1183620529
Kerk
2007-07-05 11:28
2007.08.05
[usability] регистрация


15-1184208227
Slider007
2007-07-12 06:43
2007.08.05
С днем рождения ! 12 июля 2007 четверг