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

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

Ошибка при удалении в ADOQuery. [D7, MSSQL]


Страницы:   1 2

Babay ©   (2003-04-28 04:53:00) 

Доброго времени суток, уважаемые!
У меня на MSSQL - сервер есть табличка (MyTable) с разными полями. Одно из полей автоинкрементальное.
На форме в проге связка ADOConnection ->AdoQuery->DataSource-> DbGrid->DBNavigator все это дело завязано на таблицу MyTable. В Query запрос такой:
Select *
from MyTable

С помощью навигатора добовляем удаляем записи в таблице все ок.
Но стоит поставить на таблицу тригер на удаление (в тригере идет удаление записей из другой таблицы) то при удалении записей через программу возникает ошибка:

"Неудается найти строку для обновления. Некоторые значения могли быть изменены со времени ее последнего чтения."

Однако запись на сервере удалятся и тригер срабатывает. В DBGrid запись остается видимой. Потом перееоткрываем Query и видим, что записи действительно нет. При этом я точно знаю что с таблицей никто кроме меня не работает и изменять никто ничего немог.

Кто нибудь может объяснить в чем дело и как это победить?


Babay   (2003-04-28 08:12:00) [21]

CREATE TRIGGER [DeleteUser] ON dbo.MyTable
FOR DELETE
AS

delete from MyTable1
where MyTable1.User_Id in (select [Id] from Deleted)

delete from MyTable2
where MyTable2.User_Id in (select [Id] from Deleted)

Причем удаление просто запросом из QueryAnalyser проходит без ошибок


BoxTer   (2003-04-28 08:01:00) [22]

текст триггера на бочку...


Страницы:   1 2

Наверх

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