Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Удаление с помощью триггера [D6, MSSQL]


Александр1 ©   (2002-09-28 10:45:00) 

Уважаемые Мастера!
Я использую ADO+Delphi6+MSSQL2000 (DE)! Хочу узнать как лечить!
У меня на удаление записи из главной таблицы повешен триггер на удаление записей по ключу из дочерней таблицы. При этом при удалении через Делфи возникает сообщение, что неполные сведения о ключевом поле и т.д. и данные в гриде не обновляются, хотя операция удаления проходит нормально. Это возникает если в дочерней таблице больше чем 1 запись, связаных с главной таблицей. Если удаляю через QueryAnaliser то никаких сообщений не возникает. Я так понимаю, что это проблема в ADO+Delphi. Подскажите пожалуйста!
С уважением.


Mike_Goblin   (2002-09-30 10:32:00) [1]

> BlackTiger А потом сделай Requery.
И заново тяни весь набор данных с сервера, замедляя работу программы :(((


Виталий Панасенко   (2002-09-30 08:38:00) [2]

А что, нельзя было каскадное удаление объявить ?! Сервер все сам бы и удалил при удалении записи в родительской таблице ...


BlackTiger   (2002-09-29 13:56:00) [3]

Попробуй перехватывать удаление и удалять собственноручно (или просто запретить удаление в гриде). А потом используй ADOCommand(CommandText) "DELETE FROM Table WHERE ...".
А потом сделай Requery. По-моему это будет правильней, и не надо мучиться.


Наверх

Титульная страница Поиск, карта сайта Написать письмо