2013-03-27 1 views
0

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

Возможно ли это, и если да, то каким образом?

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

io_oRecordSet.CursorLocation = adUseClient 
io_oRecordSet.Open oDataCmd, , adOpenStatic, adLockOptimistic, adCmdStoredProc 
... iterate through RS ... 
io_oRecordSet("myCol").value = "foo" 

Это один генерировать следующую ошибку ошибку

Microsoft Cursor Engine '80040e21'

операции многоступенчатой ​​Произошли ошибки. Проверьте каждое значение состояния.

Из того, что я видел, я подозреваю, что ADO может не понравиться, что данные поступают из хранимой процедуры, поскольку он не знает, как сделать обновление БД.

ответ

1

Если вам абсолютно не нужно обновлять базу данных, вы можете использовать disconnected Recordset. Просто убедитесь, что вы используете курсор на стороне клиента и установите свойство Recordset ActiveConnection на Nothing после его открытия.

 Смежные вопросы

  • Нет связанных вопросов^_^