powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ADO provider for SQL Server+Delphi5+Triggers
2 сообщений из 2, страница 1 из 1
ADO provider for SQL Server+Delphi5+Triggers
    #32013848
dash
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Работаю с SQL 7.0 и D5 через TADOQuery. Таблицу показывает, добавляет, удаляет - все ОК. К таблице пристроил триггер на удаление чтобы чистить записи в другой связанной таблице - как в учебниках написано.
/*----------------------------------------------*/
CREATE TRIGGER [FX_DELETE_TRIGGER] ON [FOREX]
FOR DELETE
AS
IF @@ROWCOUNT > 1
BEGIN
ROLLBACK TRAN
RAISERROR('DELETED %d LINES',16,1,@@ROWCOUNT)
END
declare @recid Integer
SELECT @recid=recid FROM DELETED
DELETE FROM CASHFLOW WHERE (OWNER =@RECID) AND (OPTYPE=1)
/*----------------------------------------------*/
После подключения триггера появилась ошибка EDatabaseError при удалении записи из основной таблицы: "Key column information is insufficient or incorrect. Too many rows were affected by apdate". Ошибка возникает в DoRecordsetDelete при вызове интерфейсного метода Recordset.Delete.
После чего рекордсет съезжает. Помогает перечитывание таблицы с изменением параметров SQL запроса(иногда). При этом сам триггер отрабатывает корректно, все удаляет.
Если в триггере убрать удаление - все снова работает. Ковыряюсь 4 дня, переустановил ADO на 2.6 -нет эффекта. Главное, ошибка без номера и в интерфейс не залезешь, непонятно какие ключи и на каком этапе она теряет. В Profiler все нормально, все запросы отрабатываются. Ошибку генерит сам ADO provider, но почему?
Может, кто знает, что делать?
...
Рейтинг: 0 / 0
ADO provider for SQL Server+Delphi5+Triggers
    #32013850
dash
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
4 дня псу под хвост. А всего-то надо было добавить в триггер SET NOCOUNT ON.
Вот оно как бывает.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ADO provider for SQL Server+Delphi5+Triggers
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]