Condividi tramite


OracleLob.Erase Metodo

Definizione

Cancella i dati da questo OracleLoboggetto .

Overload

Nome Descrizione
Erase()

Cancella tutti i dati da questo OracleLoboggetto .

Erase(Int64, Int64)

Cancella la quantità specificata di dati da questo OracleLoboggetto .

Erase()

Cancella tutti i dati da questo OracleLoboggetto .

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

Restituisce

Numero di byte cancellati.

Eccezioni

L'operazione non si trova all'interno di una transazione, l'oggetto OracleLob è Null o la connessione viene chiusa.

L'oggetto è stato chiuso o eliminato.

Si è verificato un errore Oracle.

Commenti

Erase non tronca i dati. La LOB lunghezza rimane invariata per un BLOB tipo di dati e i dati cancellati vengono sostituiti da 0x00. CLOB e NCLOB i tipi di dati vengono sostituiti da spazi.

Per scrivere in LOB, è necessario aver recuperato LOB utilizzando la clausola FOR UPDATE nell'istruzione SQL SELECT ed è necessario che sia stata avviata una transazione locale.

Annotazioni

In questa versione, un'operazione di scrittura in una sola lettura LOB potrebbe avere esito positivo, ma non aggiorna nel LOB server. In questo caso, tuttavia, la copia locale di LOB viene aggiornata. Pertanto, le operazioni di lettura successive sull'oggetto OracleLob potrebbero restituire i risultati dell'operazione di scrittura.

Si applica a

Erase(Int64, Int64)

Cancella la quantità specificata di dati da questo OracleLoboggetto .

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

Parametri

offset
Int64

Offset da cui cancellare. Per CLOB i tipi di dati e NCLOB , questo deve essere un numero pari.

amount
Int64

Quantità di dati, in byte, da cancellare. Per CLOB i tipi di dati e NCLOB , questo deve essere un numero pari.

Restituisce

Numero di byte cancellati.

Eccezioni

L'operazione non si trova all'interno di una transazione, l'oggetto OracleLob è Null o la connessione viene chiusa.

L'oggetto è stato chiuso o eliminato.

Si è verificato un errore Oracle.

Commenti

La somma dei valori nei offset parametri e amount può essere maggiore di quella delle dimensioni dell'oggetto OracleLob. Pertanto, la specifica di un valore maggiore di quello restituito dalla Length proprietà ha esito positivo; tuttavia Erase , cancella solo alla fine dell'oggetto OracleLob. Analogamente, se un valore negativo viene passato a offset, Erase avrà esito positivo, ma cancellerà solo a partire dall'inizio di OracleLob. Questo comportamento è diverso da quello dei Read metodi e Write e offre il vantaggio di poter cancellare tutti i dati dal valore specificato senza offset effettuare un round trip aggiuntivo al server per verificare le dimensioni effettive.

Erase non tronca i dati. La LOB lunghezza rimane invariata per un BLOB tipo di dati e i dati cancellati vengono sostituiti da 0x00. CLOB e NCLOB i tipi di dati vengono sostituiti da spazi.

Per scrivere in LOB, è necessario aver recuperato LOB utilizzando la clausola FOR UPDATE nell'istruzione SQL SELECT ed è necessario che sia stata avviata una transazione locale.

Annotazioni

In questa versione, un'operazione di scrittura in una sola lettura LOB potrebbe avere esito positivo, ma non aggiorna nel LOB server. In questo caso, tuttavia, la copia locale di LOB viene aggiornata. Pertanto, le operazioni di lettura successive sull'oggetto OracleLob potrebbero restituire i risultati dell'operazione di scrittura.

Si applica a