OracleLob.Erase Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Usuwa dane z tego elementu OracleLob.
Przeciążenia
| Nazwa | Opis |
|---|---|
| Erase() |
Usuwa wszystkie dane z tego elementu OracleLob. |
| Erase(Int64, Int64) |
Usuwa określoną ilość danych z tego OracleLobelementu . |
Erase()
Usuwa wszystkie dane z tego elementu OracleLob.
public:
long Erase();
public long Erase();
member this.Erase : unit -> int64
Public Function Erase () As Long
Zwraca
Liczba wymazanych bajtów.
Wyjątki
Operacja nie znajduje się w transakcji, OracleLob obiekt ma wartość null lub połączenie jest zamknięte.
Obiekt został zamknięty lub usunięty.
Wystąpił błąd Oracle.
Uwagi
Erase nie obcina danych. Długość LOB pozostaje taka sama dla BLOB typu danych, a wymazane dane są zastępowane przez 0x00.
CLOB typy danych i NCLOB są zastępowane spacjami.
Aby zapisać w LOBpliku , musisz pobrać LOB klauzulę FOR UPDATE w instrukcji SQL SELECT i musisz mieć uruchomioną transakcję lokalną.
Uwaga / Notatka
W tej wersji operacja zapisu tylko LOB do odczytu może zakończyć się powodzeniem, ale nie aktualizuje LOB serwera. W takim przypadku jednak lokalna kopia obiektu LOB jest aktualizowana. W związku z tym późniejsze operacje odczytu obiektu OracleLob mogą zwracać wyniki operacji zapisu.
Dotyczy
Erase(Int64, Int64)
Usuwa określoną ilość danych z tego OracleLobelementu .
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 być wymazane. W przypadku CLOB typów danych i NCLOB musi to być liczba parzysta.
- amount
- Int64
Ilość danych w bajtach do wymazywania. W przypadku CLOB typów danych i NCLOB musi to być liczba parzysta.
Zwraca
Liczba wymazanych bajtów.
Wyjątki
Operacja nie znajduje się w transakcji, OracleLob obiekt ma wartość null lub połączenie jest zamknięte.
Obiekt został zamknięty lub usunięty.
Wystąpił błąd Oracle.
Uwagi
Suma wartości w parametrach offset i amount może być większa niż w przypadku rozmiaru OracleLobobiektu . W związku z tym określenie wartości większej niż zwracana przez Length właściwość kończy się powodzeniem, ale Erase tylko usuwa wartość na końcu OracleLobobiektu . (Podobnie, jeśli wartość ujemna zostanie przekazana do offset, Erase powiedzie się, ale tylko wymazuje się od początku . OracleLob To zachowanie różni się od Read tych metod i Write i i oferuje zaletę możliwości wymazania wszystkich danych z wartości określonej offset przez bez konieczności dodatkowego zaokrąglania do serwera w celu zweryfikowania rzeczywistego rozmiaru.
Erase nie obcina danych. Długość LOB pozostaje taka sama dla BLOB typu danych, a wymazane dane są zastępowane przez 0x00.
CLOB typy danych i NCLOB są zastępowane spacjami.
Aby zapisać w LOBpliku , musisz pobrać LOB klauzulę FOR UPDATE w instrukcji SQL SELECT i musisz mieć uruchomioną transakcję lokalną.
Uwaga / Notatka
W tej wersji operacja zapisu tylko LOB do odczytu może zakończyć się powodzeniem, ale nie aktualizuje LOB serwera. W takim przypadku jednak lokalna kopia obiektu LOB jest aktualizowana. W związku z tym późniejsze operacje odczytu obiektu OracleLob mogą zwracać wyniki operacji zapisu.