다음을 통해 공유


OracleLob.BeginBatch 메서드

정의

쓰기 작업을 여러 개 수행하는 동안 서버 측 트리거가 발생하는 것을 막습니다.

오버로드

BeginBatch()

읽기 작업을 여러 개 수행하는 동안 서버 측 트리거가 발생하는 것을 막습니다.

BeginBatch(OracleLobOpenMode)

지정된 액세스 모드에서 읽기 및 쓰기 작업을 여러 개 수행하는 동안 서버 측 트리거가 발생하는 것을 막습니다.

BeginBatch()

읽기 작업을 여러 개 수행하는 동안 서버 측 트리거가 발생하는 것을 막습니다.

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

예외

연결이 닫힌 경우

개체가 닫혔거나 삭제된 경우

Oracle 오류가 발생한 경우

설명

모드에서 ReadOnlyLOB 엽니다. 따라서 은 LOB 에 대한 해당 호출EndBatch까지는 쓸 수 없는 에서만 읽을 수 있습니다. 에 대한 일괄 처리 쓰기를 수행하려면 를 LOB사용하여 ReadWrite를 호출 BeginBatch 합니다.

현재 동일한 트랜잭션 내에서 두 번 이상 호출 BeginBatch 하면 Oracle "ORA-22293: LOB가 동일한 트랜잭션에서 이미 열렸습니다." 오류가 발생합니다. 또한 다른 OracleDataReader를 사용하여 를 LOB 가져오고 원래 호출자가 메서드를 EndBatch 호출하지 않은 경우 동일한 오류가 생성됩니다. 따라서 사용이 완료되면 OracleLob메서드를 EndBatch 호출해야 합니다.

적용 대상

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 호출과 해당하는 BeginBatch(OracleLobOpenMode) 호출 사이에서 LOB에 액세스할 수 있는 모드(EndBatch() 값 중 하나)입니다.

예외

연결이 닫힌 경우

개체가 닫혔거나 삭제된 경우

Oracle 오류가 발생한 경우

설명

LOB쓰려면 SQL SELECT 문에서 FOR UPDATE 절을 사용하여 를 검색 LOB 해야 하며 로컬 트랜잭션이 시작되어야 합니다.

현재 동일한 트랜잭션 내에서 두 번 이상 호출 BeginBatch 하면 Oracle "ORA-22293: LOB가 동일한 트랜잭션에서 이미 열렸습니다." 오류가 발생합니다. 또한 다른 OracleDataReader를 사용하여 를 LOB 가져오고 원래 호출자가 메서드를 EndBatch 호출하지 않은 경우 동일한 오류가 생성됩니다. 따라서 사용이 완료되면 OracleLob메서드를 EndBatch 호출해야 합니다.

적용 대상