OracleLob.BeginBatch 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在执行多个写操作时避免服务器端触发器激发。
重载
BeginBatch() |
在执行多个读操作时避免服务器端触发器激发。 |
BeginBatch(OracleLobOpenMode) |
在以指定的访问模式执行多个读写操作时避免服务器端触发器激发。 |
BeginBatch()
在执行多个读操作时避免服务器端触发器激发。
public:
void BeginBatch();
public void BeginBatch ();
member this.BeginBatch : unit -> unit
Public Sub BeginBatch ()
例外
连接已关闭。
对象已关闭或已释放。
发生了 Oracle 错误。
注解
在 模式下打开 ;LOB
因此,LOB
在对 的相应调用EndBatch之前,只能从中读取而不是ReadOnly写入 。 若要对 执行批量写入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 方法。