Что может вызвать ошибку конфликта операций курсора в ADO с SQL Server в Windows 8 и Delphi XE3?

Я использую Embarcadero Delphi XE3 в Windows 8 и пытаюсь подключиться к SQL Server 2000.

Моя программа работала правильно, когда я использовал Delphi 2007 в Windows 7, но теперь всякий раз, когда я выполняю транзакцию (обновление, вставка, удаление), она выдает мне сообщение об ошибке, говорящее "Cursor Operation Conflict" и продолжающее работу (зафиксировать транзакцию).

Я использую TADOConnection для подключения к серверу и использую TADODataSet для выполнения транзакций. Я использую TADODataSet.Insert/ TADODataSet.Edit/ TADODataSet.Post/ TADODataSet.Delete для выполнения транзакций.

Я не мог опубликовать какой-либо фрагмент кода, потому что это общая проблема.

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

Ошибка появляется только тогда, когда я использую clUseServer в свойстве TADODataSet.CursorLocation.


person user1512094    schedule 27.12.2012    source источник
comment
Вы пробовали это исправление? support.microsoft.com/kb/324900   -  person Arjen van der Spek    schedule 28.12.2012
comment
да, но все еще с этой ошибкой   -  person user1512094    schedule 02.01.2013


Ответы (1)


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

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

я не очень разбираюсь в делфи, но я подумал, что это может помочь

person Phyushin    schedule 19.01.2017