Share via


OracleLob.Erase Método

Definição

Apaga dados deste OracleLob.

Sobrecargas

Erase()

Apaga todos os dados deste OracleLob.

Erase(Int64, Int64)

Apaga a quantidade especificada de dados neste OracleLob.

Erase()

Apaga todos os dados deste OracleLob.

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

Retornos

O número de bytes apagados.

Exceções

A operação não está em uma transação, o objeto OracleLob é nulo ou a conexão é fechada.

O objeto foi fechado ou descartado.

Ocorreu um erro do Oracle.

Comentários

Erase não trunca dados. O LOB comprimento permanece o mesmo para um BLOB tipo de dados e os dados apagados são substituídos por 0x00. CLOB e NCLOB os tipos de dados são substituídos por espaços.

Para gravar no LOB, você deve ter recuperado o usando a LOB cláusula FOR UPDATE na instrução SQL SELECT e deve ter uma transação local iniciada.

Observação

Nesta versão, uma operação de gravação em um somente LOB leitura pode ter êxito, mas não atualiza o LOB no servidor. Nesse caso, no entanto, a cópia local do LOB é atualizada. Portanto, operações de leitura posteriores no OracleLob objeto podem retornar os resultados da operação de gravação.

Aplica-se a

Erase(Int64, Int64)

Apaga a quantidade especificada de dados neste 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

Parâmetros

offset
Int64

O deslocamento do qual apagar. Para os tipos de dados CLOB e NCLOB, isso deve ser um número par.

amount
Int64

A quantidade de dados, em bytes, a serem apagados. Para os tipos de dados CLOB e NCLOB, isso deve ser um número par.

Retornos

O número de bytes apagados.

Exceções

A operação não está em uma transação, o objeto OracleLob é nulo ou a conexão é fechada.

O objeto foi fechado ou descartado.

Ocorreu um erro do Oracle.

Comentários

A soma dos valores nos offset parâmetros e amount pode ser maior que a do tamanho do OracleLob. Portanto, especificar um valor maior que o Length retornado pela propriedade é bem-sucedido; no entanto Erase , apenas apaga até o final do OracleLob. (Da mesma forma, se um valor negativo for passado para offset, Erase terá êxito, mas apenas apagará a partir do início do OracleLob.) Esse comportamento é diferente do dos Read métodos e e oferece a vantagem de poder apagar todos os dados do valor especificado por offset sem fazer uma viagem de ida e Write volta adicional para o servidor para verificar o tamanho real.

Erase não trunca dados. O LOB comprimento permanece o mesmo para um BLOB tipo de dados e os dados apagados são substituídos por 0x00. CLOB e NCLOB os tipos de dados são substituídos por espaços.

Para gravar no LOB, você deve ter recuperado o usando a LOB cláusula FOR UPDATE na instrução SQL SELECT e deve ter uma transação local iniciada.

Observação

Nesta versão, uma operação de gravação em um somente LOB leitura pode ter êxito, mas não atualiza o LOB no servidor. Nesse caso, no entanto, a cópia local do LOB é atualizada. Portanto, operações de leitura posteriores no OracleLob objeto podem retornar os resultados da operação de gravação.

Aplica-se a