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开始擦除。此行为与ReadWrite方法不同,并具有从值offset中清除所有数据的优势,而无需对服务器进行额外的往返来验证实际大小。
Erase 不会截断数据。 数据类型 LOB 的长度保持不变 BLOB ,擦除的数据将替换为0x00。
CLOB 和 NCLOB 数据类型由空格替换。
若要写入, LOB必须在 SQL SELECT 语句中使用 FOR UPDATE 子句检索 LOB ,并且必须启动本地事务。
注释
在此版本中,对只读 LOB 的写入操作可能会成功,但不更新 LOB 服务器上的写入操作。 但是,在这种情况下,将更新该 LOB 副本的本地副本。 因此,以后对 OracleLob 对象的读取操作可能会返回写入操作的结果。