Показать сообщение отдельно
  #2  
Старый 17.07.2019, 23:00
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,004
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

на второй вопрос:
Код:
u:=MessageDlg('Удалить проект '+Table1.FieldByName('...').AsSTring + '?',mtCustom,[mbYes,mbNo],0);

На первый вопрос. Если база - СУБД (MS SQL, Oracle, Interbase, etc), то действительно можно применять каскадное удаление.Тогда БД сама по ключам удалит нужные записи.
Если БД локальная (типа Paradox, dBase), то придется удалять руками. Т.е. из главной таблицы запоминаешь уникальный id записи, удаляешь из подчиненных таблиц записи с соотв. значением, указывающем на главную запись и в конце удаляешь соотв. запись из главной таблицы.
Ответить с цитированием