OracleLob.Erase Metoda

Definicja

Wymazuje dane z tego OracleLob .Erases data from this OracleLob.

Przeciążenia

Erase()

Kasuje wszystkie dane z tego OracleLob .Erases all data from this OracleLob.

Erase(Int64, Int64)

Wymazuje określoną ilość danych z tego elementu OracleLob .Erases the specified amount of data from this OracleLob.

Erase()

Kasuje wszystkie dane z tego OracleLob .Erases all data from this OracleLob.

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

Zwraca

Int64

Liczba wymazanych bajtów.The number of bytes erased.

Wyjątki

Operacja nie znajduje się w transakcji, OracleLob obiekt ma wartość null lub połączenie jest zamknięte.The operation is not within a transaction, the OracleLob object is null, or the connection is closed.

Obiekt został zamknięty lub usunięty.The object was closed or disposed.

Wystąpił błąd programu Oracle.An Oracle error has occurred.

Uwagi

EraseNie obcina danych.Erase does not truncate data. LOBDługość pozostaje taka sama dla BLOB typu danych, a wymazane dane są zastępowane przez 0x00.The LOB length remains the same for a BLOB data type, and the erased data is replaced by 0x00. CLOBi NCLOB typy danych są zamieniane na spacje.CLOB and NCLOB data types are replaced by spaces.

Aby można było zapisać w LOB , należy pobrać LOB klauzulę using for Update w instrukcji SQL SELECT, a użytkownik musi mieć uruchomioną transakcję lokalną.To write to the LOB, you must have retrieved the LOB using the FOR UPDATE clause in the SQL SELECT statement, and you must have a local transaction started.

Uwaga

W tej wersji operacja zapisu w trybie tylko do odczytu LOB może zakończyć się powodzeniem, ale nie aktualizuje LOB na serwerze.In this release, a write operation to a read-only LOB might succeed, but does not update the LOB on the server. W takim przypadku jednak lokalna kopia programu LOB jest aktualizowana.In this case, however, the local copy of the LOB is updated. W związku z tym późniejsze operacje odczytu na OracleLob obiekcie mogą zwrócić wyniki operacji zapisu.Therefore, later read operations on the OracleLob object might return the results of the write operation.

Dotyczy

Erase(Int64, Int64)

Wymazuje określoną ilość danych z tego elementu OracleLob .Erases the specified amount of data from this 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

Parametry

offset
Int64

Przesunięcie, z którego ma zostać wymazane.The offset from which to erase. Dla CLOB i NCLOB typów danych, musi to być parzysta liczba.For CLOB and NCLOB data types, this must be an even number.

amount
Int64

Ilość danych, w bajtach, do wymazania.The quantity of data, in bytes, to erase. Dla CLOB i NCLOB typów danych, musi to być parzysta liczba.For CLOB and NCLOB data types, this must be an even number.

Zwraca

Int64

Liczba wymazanych bajtów.The number of bytes erased.

Wyjątki

Operacja nie znajduje się w transakcji, OracleLob obiekt ma wartość null lub połączenie jest zamknięte.The operation is not within a transaction, the OracleLob object is null, or the connection is closed.

Obiekt został zamknięty lub usunięty.The object was closed or disposed.

Wystąpił błąd programu Oracle.An Oracle error has occurred.

Uwagi

Suma wartości w offset amount parametrach i może być większa niż rozmiar OracleLob .The sum of the values in the offset and amount parameters can be greater than that of the size of the OracleLob. W związku z tym określenie wartości większej niż zwracana przez Length Właściwość powiedzie się, ale Erase tylko zostanie wymazany na końcu OracleLob .Therefore, specifying a value greater than that returned by the Length property succeeds; however Erase only erases to the end of the OracleLob. (Podobnie, jeśli wartość ujemna jest przenoszona do offset , powiedzie Erase się, ale tylko wymazywanie od początku elementu OracleLob ). To zachowanie różni się od Read metod i i Write oferuje możliwość wymazania wszystkich danych z wartości określonej przez nie przeprowadzenia offset dodatkowej komunikacji między serwerami w celu zweryfikowania rzeczywistego rozmiaru.(Similarly, if a negative value is passed to offset, Erase will succeed, but only erase starting from the beginning of the OracleLob.) This behavior is different from that of the Read and Write methods, and offers the advantage of being able to erase all data from the value specified by offset without making an additional roundtrip to the server to verify the actual size.

EraseNie obcina danych.Erase does not truncate data. LOBDługość pozostaje taka sama dla BLOB typu danych, a wymazane dane są zastępowane przez 0x00.The LOB length remains the same for a BLOB data type, and the erased data is replaced by 0x00. CLOBi NCLOB typy danych są zamieniane na spacje.CLOB and NCLOB data types are replaced by spaces.

Aby można było zapisać w LOB , należy pobrać LOB klauzulę using for Update w instrukcji SQL SELECT, a użytkownik musi mieć uruchomioną transakcję lokalną.To write to the LOB, you must have retrieved the LOB using the FOR UPDATE clause in the SQL SELECT statement, and you must have a local transaction started.

Uwaga

W tej wersji operacja zapisu w trybie tylko do odczytu LOB może zakończyć się powodzeniem, ale nie aktualizuje LOB na serwerze.In this release, a write operation to a read-only LOB might succeed, but does not update the LOB on the server. W takim przypadku jednak lokalna kopia programu LOB jest aktualizowana.In this case, however, the local copy of the LOB is updated. W związku z tym późniejsze operacje odczytu na OracleLob obiekcie mogą zwrócić wyniki operacji zapisu.Therefore, later read operations on the OracleLob object might return the results of the write operation.

Dotyczy