OracleLob.Erase 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
從這個 OracleLob 清除資料。
多載
Erase() |
從這個 OracleLob 清除所有資料。 |
Erase(Int64, Int64) |
從這個 OracleLob 清除指定的資料量。 |
Erase()
從這個 OracleLob 清除所有資料。
public:
long Erase();
public long Erase ();
member this.Erase : unit -> int64
Public Function Erase () As Long
傳回
清除的位元組數目。
例外狀況
作業不在交易中、OracleLob 物件為 null,或是連接已關閉。
物件已關閉或處置。
發生 Oracle 錯誤。
備註
Erase 不會截斷數據。 數據類型的 LOB
長度會維持不變 BLOB
,而且清除的數據會由0x00取代。
CLOB
和 NCLOB
數據類型會以空格取代。
若要寫入 LOB
,您必須已在 SQL SELECT 語句中使用 FOR UPDATE 子句擷取 LOB
,而且必須啟動本機交易。
注意
這個版本中,唯讀 LOB
的寫入作業可能會成功,但不會更新 LOB
伺服器上的 。 不過,在此情況下,會更新的 LOB
本地副本。 因此,物件上稍後的 OracleLob 讀取作業可能會傳回寫入作業的結果。
適用於
Erase(Int64, Int64)
從這個 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
參數
- offset
- Int64
要清除的來源位移。 對 CLOB
和 NCLOB
資料型別而言,這必須是偶數。
- amount
- Int64
要清除的資料量,以位元組為單位。 對 CLOB
和 NCLOB
資料型別而言,這必須是偶數。
傳回
清除的位元組數目。
例外狀況
作業不在交易中、OracleLob 物件為 null,或是連接已關閉。
物件已關閉或處置。
發生 Oracle 錯誤。
備註
和參數中的 offset
值總和 amount
可以大於的大小 OracleLob。 因此,指定大於 屬性所 Length 傳回的值會成功;不過 Erase ,只會清除到 結尾 OracleLob。 (同樣地,如果將負值傳遞至 offset
,Erase將會成功,但只會從 OracleLob.) 開始清除 此行為與 和 Write 方法的開頭不同Read,並提供能夠清除 所offset
指定值的所有數據的優點,而不需要額外往返伺服器來驗證實際大小。
Erase 不會截斷數據。 數據類型的 LOB
長度會維持不變 BLOB
,而且清除的數據會由0x00取代。
CLOB
和 NCLOB
數據類型會以空格取代。
若要寫入 LOB
,您必須已在 SQL SELECT 語句中使用 FOR UPDATE 子句擷取 LOB
,而且必須啟動本機交易。
注意
這個版本中,唯讀 LOB
的寫入作業可能會成功,但不會更新 LOB
伺服器上的 。 不過,在此情況下,會更新的 LOB
本地副本。 因此,物件上稍後的 OracleLob 讀取作業可能會傳回寫入作業的結果。