Freigeben über


OracleLob.Erase Methode

Definition

Löscht Daten aus diesem OracleLob.

Überlädt

Name Beschreibung
Erase()

Löscht alle Daten aus diesem OracleLob.

Erase(Int64, Int64)

Löscht die angegebene Datenmenge aus diesem OracleLob.

Erase()

Löscht alle Daten aus diesem OracleLob.

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

Gibt zurück

Die Anzahl der gelöschten Bytes.

Ausnahmen

Der Vorgang befindet sich nicht innerhalb einer Transaktion, das OracleLob Objekt ist NULL, oder die Verbindung wird geschlossen.

Das Objekt wurde geschlossen oder verworfen.

Ein Oracle-Fehler ist aufgetreten.

Hinweise

Erase Daten werden nicht abgeschnitten. Die LOB Länge bleibt für einen BLOB Datentyp gleich, und die gelöschten Daten werden durch 0x00 ersetzt. CLOB und NCLOB Datentypen werden durch Leerzeichen ersetzt.

Um in das LOBElement zu schreiben, müssen Sie die Verwendung der LOB FOR UPDATE-Klausel in der SQL SELECT-Anweisung abgerufen haben, und Sie müssen eine lokale Transaktion gestartet haben.

Hinweis

In dieser Version ist ein Schreibvorgang in einen schreibgeschützten LOB Vorgang möglicherweise erfolgreich, aktualisiert jedoch nicht den LOB Server. In diesem Fall wird jedoch die lokale Kopie der Datei LOB aktualisiert. Daher können später Lesevorgänge für das OracleLob Objekt die Ergebnisse des Schreibvorgangs zurückgeben.

Gilt für:

Erase(Int64, Int64)

Löscht die angegebene Datenmenge aus diesem 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

Parameter

offset
Int64

Der Offset, aus dem gelöscht werden soll. Für CLOB und NCLOB Datentypen muss dies eine gerade Zahl sein.

amount
Int64

Die Zu löschende Datenmenge in Byte. Für CLOB und NCLOB Datentypen muss dies eine gerade Zahl sein.

Gibt zurück

Die Anzahl der gelöschten Bytes.

Ausnahmen

Der Vorgang befindet sich nicht innerhalb einer Transaktion, das OracleLob Objekt ist NULL, oder die Verbindung wird geschlossen.

Das Objekt wurde geschlossen oder verworfen.

Ein Oracle-Fehler ist aufgetreten.

Hinweise

Die Summe der Werte in den offset Und amount Parametern kann größer sein als die der Größe der OracleLob. Daher ist die Angabe eines Werts größer als der wert, der von der Length Eigenschaft zurückgegeben wird, erfolgreich. Wird jedoch Erase nur bis zum Ende der Eigenschaft OracleLobgelöscht. (Wenn ein negativer Wert übergeben wird, Erase wird es ebenfalls erfolgreich offsetsein, aber nur ab dem Anfang der OracleLob.) Dieses Verhalten unterscheidet sich von der und den ReadWrite Methoden und bietet den Vorteil, alle Daten aus dem angegebenen offset Wert zu löschen, ohne einen zusätzlichen Roundtrip auf den Server vorzunehmen, um die tatsächliche Größe zu überprüfen.

Erase Daten werden nicht abgeschnitten. Die LOB Länge bleibt für einen BLOB Datentyp gleich, und die gelöschten Daten werden durch 0x00 ersetzt. CLOB und NCLOB Datentypen werden durch Leerzeichen ersetzt.

Um in das LOBElement zu schreiben, müssen Sie die Verwendung der LOB FOR UPDATE-Klausel in der SQL SELECT-Anweisung abgerufen haben, und Sie müssen eine lokale Transaktion gestartet haben.

Hinweis

In dieser Version ist ein Schreibvorgang in einen schreibgeschützten LOB Vorgang möglicherweise erfolgreich, aktualisiert jedoch nicht den LOB Server. In diesem Fall wird jedoch die lokale Kopie der Datei LOB aktualisiert. Daher können später Lesevorgänge für das OracleLob Objekt die Ergebnisse des Schreibvorgangs zurückgeben.

Gilt für: