OracleLob.Erase Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Löscht Daten aus diesem OracleLob.
Überlädt
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
Die Operation befindet sich nicht innerhalb einer Transaktion, das OracleLob-Objekt ist NULL, oder die Verbindung ist geschlossen.
Das Objekt war geschlossen oder freigegeben.
Es ist ein Oracle-Fehler aufgetreten.
Hinweise
Erase schneidet keine Daten ab. Die LOB
Länge bleibt für einen BLOB
Datentyp gleich, und die gelöschten Daten werden durch 0x00 ersetzt.
CLOB
Datentypen und NCLOB
werden durch Leerzeichen ersetzt.
Um in zu LOB
schreiben, müssen Sie die mithilfe der FOR UPDATE-Klausel LOB
in der SQL SELECT-Anweisung abgerufen haben, und Sie müssen eine lokale Transaktion gestartet haben.
Hinweis
In dieser Version kann ein Schreibvorgang für einen schreibgeschützten LOB
Vorgang erfolgreich sein, aktualisiert aber nicht auf LOB
dem Server. In diesem Fall wird jedoch die lokale Kopie des LOB
aktualisiert. Daher können spätere 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, ab dem gelöscht werden soll. Bei CLOB
-Datentypen und NCLOB
-Datentypen muss dies eine gerade Zahl sein.
- amount
- Int64
Die zu löschende Datenmenge in Bytes. Bei CLOB
-Datentypen und NCLOB
-Datentypen muss dies eine gerade Zahl sein.
Gibt zurück
Die Anzahl der gelöschten Bytes.
Ausnahmen
Die Operation befindet sich nicht innerhalb einer Transaktion, das OracleLob-Objekt ist NULL, oder die Verbindung ist geschlossen.
Das Objekt war geschlossen oder freigegeben.
Es ist ein Oracle-Fehler aufgetreten.
Hinweise
Die Summe der Werte in den offset
Parametern und amount
kann größer als die der Größe von OracleLobsein. Daher ist die Angabe eines Werts, der größer als der von der Length -Eigenschaft zurückgegeben wird, erfolgreich. Wird jedoch Erase nur am Ende von OracleLobgelöscht. (Ebenso wird, wenn ein negativer Wert an übergeben wird, offset
Erase erfolgreich, aber nur ab dem Anfang des OracleLobgelöscht.) Dieses Verhalten unterscheidet sich von dem Read der Methoden und Write und bietet den Vorteil, dass alle Daten aus dem von offset
angegebenen Wert gelöscht werden können, ohne einen zusätzlichen Roundtrip zum Server zu machen, um die tatsächliche Größe zu überprüfen.
Erase schneidet keine Daten ab. Die LOB
Länge bleibt für einen BLOB
Datentyp gleich, und die gelöschten Daten werden durch 0x00 ersetzt.
CLOB
Datentypen und NCLOB
werden durch Leerzeichen ersetzt.
Um in zu LOB
schreiben, müssen Sie die mithilfe der FOR UPDATE-Klausel LOB
in der SQL SELECT-Anweisung abgerufen haben, und Sie müssen eine lokale Transaktion gestartet haben.
Hinweis
In dieser Version kann ein Schreibvorgang für einen schreibgeschützten LOB
Vorgang erfolgreich sein, aktualisiert aber nicht auf LOB
dem Server. In diesem Fall wird jedoch die lokale Kopie des LOB
aktualisiert. Daher können spätere Lesevorgänge für das OracleLob Objekt die Ergebnisse des Schreibvorgangs zurückgeben.