다음을 통해 공유


OracleLob.Erase 메서드

정의

OracleLob에서 데이터를 지웁니다.

오버로드

Erase()

OracleLob에서 모든 데이터를 지웁니다.

Erase(Int64, Int64)

OracleLob에서 지정된 양의 데이터를 지웁니다.

Erase()

OracleLob에서 모든 데이터를 지웁니다.

public:
 long Erase();
public long Erase ();
member this.Erase : unit -> int64
Public Function Erase () As Long

반환

지운 바이트 수입니다.

예외

작업이 트랜잭션에 속하지 않거나, OracleLob 개체가 null이거나, 연결이 닫힌 경우

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

Oracle 오류가 발생한 경우

설명

Erase 는 데이터를 자르지 않습니다. 길이는 LOB 데이터 형식에 BLOB 대해 동일하게 유지되며 지운 데이터는 0x00 바뀝니다. CLOBNCLOB 데이터 형식은 공백으로 대체됩니다.

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

참고

이 릴리스에서는 읽기 전용 LOB 에 대한 쓰기 작업이 성공할 수 있지만 서버에서 을 LOB 업데이트하지는 않습니다. 그러나 이 경우 의 LOB 로컬 복사본이 업데이트됩니다. 따라서 나중에 개체에 대한 OracleLob 읽기 작업은 쓰기 작업의 결과를 반환할 수 있습니다.

적용 대상

Erase(Int64, Int64)

OracleLob에서 지정된 양의 데이터를 지웁니다.

public:
 long Erase(long offset, long amount);
public long Erase (long offset, long amount);
member this.Erase : int64 * int64 -> int64
Public Function Erase (offset As Long, amount As Long) As Long

매개 변수

offset
Int64

지울 소스 오프셋입니다. CLOBNCLOB 데이터 형식의 경우 짝수여야 합니다.

amount
Int64

지울 데이터 양(바이트)입니다. CLOBNCLOB 데이터 형식의 경우 짝수여야 합니다.

반환

지운 바이트 수입니다.

예외

작업이 트랜잭션에 속하지 않거나, OracleLob 개체가 null이거나, 연결이 닫힌 경우

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

Oracle 오류가 발생한 경우

설명

amount 매개 변수의 값 offset 합계는 의 크기OracleLob보다 클 수 있습니다. 따라서 속성에서 반환 Length 된 값보다 큰 값을 지정하면 성공합니다. 그러나 Erase 의 끝까지 OracleLob만 지워집니다. 마찬가지로 음수 값이 에 offsetErase 전달되면 성공하지만 시작OracleLob부터만 지웁니다. 이 동작은 및 메서드의 Read 동작과 Write 다르며, 실제 크기를 확인하기 위해 서버에 대한 추가 왕복을 수행하지 않고 지정된 값 offset 에서 모든 데이터를 지울 수 있다는 장점을 제공합니다.

Erase 는 데이터를 자르지 않습니다. 길이는 LOB 데이터 형식에 BLOB 대해 동일하게 유지되며 지운 데이터는 0x00 바뀝니다. CLOBNCLOB 데이터 형식은 공백으로 대체됩니다.

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

참고

이 릴리스에서는 읽기 전용 LOB 에 대한 쓰기 작업이 성공할 수 있지만 서버에서 을 LOB 업데이트하지는 않습니다. 그러나 이 경우 의 LOB 로컬 복사본이 업데이트됩니다. 따라서 나중에 개체에 대한 OracleLob 읽기 작업은 쓰기 작업의 결과를 반환할 수 있습니다.

적용 대상