Поделиться через


OracleLob.BeginBatch Метод

Определение

Предотвращает срабатывание серверных триггеров при выполнении нескольких операций записи.

Перегрузки

BeginBatch()

Предотвращает срабатывание серверных триггеров при выполнении нескольких операций чтения.

BeginBatch(OracleLobOpenMode)

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

BeginBatch()

Предотвращает срабатывание серверных триггеров при выполнении нескольких операций чтения.

public:
 void BeginBatch();
public void BeginBatch ();
member this.BeginBatch : unit -> unit
Public Sub BeginBatch ()

Исключения

Соединение закрыто.

Объект был закрыт или уничтожен.

Произошла ошибка Oracle.

Комментарии

Открывает в LOBReadOnly режиме , LOB поэтому можно считывать только из , а не записывать в , пока соответствующий вызов не EndBatchвызывает . Чтобы выполнить пакетную запись в LOB, вызовите BeginBatch с ReadWriteпомощью .

Вызов BeginBatch более одного раза в одной транзакции в настоящее время вызывает ошибку Oracle "ORA-22293: lob уже открыт в той же транзакции". Кроме того, если вы получаете с помощью другого LOBOracleDataReaderметода , а исходный вызывающий объект не вызвал EndBatch метод , возникает та же ошибка. Поэтому необходимо вызвать EndBatch метод по завершении работы с .OracleLob

Применяется к

BeginBatch(OracleLobOpenMode)

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

public:
 void BeginBatch(System::Data::OracleClient::OracleLobOpenMode mode);
public void BeginBatch (System.Data.OracleClient.OracleLobOpenMode mode);
member this.BeginBatch : System.Data.OracleClient.OracleLobOpenMode -> unit
Public Sub BeginBatch (mode As OracleLobOpenMode)

Параметры

mode
OracleLobOpenMode

Режим (одно из значений OracleLobOpenMode), в котором доступ к LOB можно осуществлять между вызовом BeginBatch(OracleLobOpenMode) и соответствующим вызовом EndBatch().

Исключения

Соединение закрыто.

Объект был закрыт или уничтожен.

Произошла ошибка Oracle.

Комментарии

Для записи в LOBнеобходимо получить LOB с помощью предложения FOR UPDATE в инструкции SQL SELECT и запустить локальную транзакцию.

Вызов BeginBatch более одного раза в одной транзакции в настоящее время вызывает ошибку Oracle "ORA-22293: lob уже открыт в той же транзакции". Кроме того, если вы получаете с помощью другого LOBOracleDataReaderметода , а исходный вызывающий объект не вызвал EndBatch метод , возникает та же ошибка. Поэтому необходимо вызвать EndBatch метод по завершении работы с .OracleLob

Применяется к