OracleLob.BeginBatch 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
防止在執行多重寫入作業時引發伺服器端觸發程序。
多載
| BeginBatch() |
防止在執行多重讀取作業時引發伺服器端觸發程序。 |
| BeginBatch(OracleLobOpenMode) |
以指定的存取模式執行多重讀取和寫入作業時,防止引發伺服器端觸發程序。 |
BeginBatch()
防止在執行多重讀取作業時引發伺服器端觸發程序。
public:
void BeginBatch();
public void BeginBatch();
member this.BeginBatch : unit -> unit
Public Sub BeginBatch ()
例外狀況
物件已關閉或處置。
發生 Oracle 錯誤。
備註
LOB在模式中ReadOnly開啟 ,因此,LOB只有在對應的呼叫EndBatch之前,才能讀取 ,而不會寫入 。 若要對 執行批次寫入LOB,請使用 ReadWrite呼叫 BeginBatch 。
在相同交易內呼叫 BeginBatch 一次以上時,目前會擲回 Oracle “ORA-22293:LOB 已在相同交易中開啟” 錯誤。 此外,如果您使用另一個 OracleDataReader取得 LOB ,而且原始呼叫端尚未呼叫 EndBatch 方法,則會產生相同的錯誤。 因此,當您完成使用 OracleLob時,必須呼叫 EndBatch 方法。
適用於
BeginBatch(OracleLobOpenMode)
以指定的存取模式執行多重讀取和寫入作業時,防止引發伺服器端觸發程序。
public:
void BeginBatch(System::Data::OracleClient::OracleLobOpenMode mode);
public void BeginBatch(System.Data.OracleClient.OracleLobOpenMode mode);
member this.BeginBatch : System.Data.OracleClient.OracleLobOpenMode -> unit
Public Sub BeginBatch (mode As OracleLobOpenMode)
參數
- mode
- OracleLobOpenMode
模式 (其中一個 OracleLobOpenMode 值),在這個 BeginBatch(OracleLobOpenMode) 呼叫和對應的 EndBatch() 呼叫之間可以存取 LOB。
例外狀況
物件已關閉或處置。
發生 Oracle 錯誤。
備註
若要寫入 LOB至 ,您必須已在 SQL SELECT 語句中使用 FOR UPDATE 子句擷取 LOB ,而且必須啟動本機交易。
在相同交易內呼叫 BeginBatch 一次以上時,目前會擲回 Oracle “ORA-22293:LOB 已在相同交易中開啟” 錯誤。 此外,如果您使用另一個 OracleDataReader取得 LOB ,而且原始呼叫端尚未呼叫 EndBatch 方法,則會產生相同的錯誤。 因此,當您完成使用 OracleLob時,必須呼叫 EndBatch 方法。