OracleLob.CopyTo 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
CopyTo(OracleLob) | |
CopyTo(OracleLob, Int64) | |
CopyTo(Int64, OracleLob, Int64, Int64) |
CopyTo(OracleLob)
public:
long CopyTo(System::Data::OracleClient::OracleLob ^ destination);
public long CopyTo (System.Data.OracleClient.OracleLob destination);
member this.CopyTo : System.Data.OracleClient.OracleLob -> int64
override this.CopyTo : System.Data.OracleClient.OracleLob -> int64
Public Function CopyTo (destination As OracleLob) As Long
参数
返回
已复制的字节数。 这排除了所有已填充的字节。
例外
destination
参数中指定的 OracleLob 为 null。
该操作未处在事务中,OracleLob 对象为 null,或者连接已关闭。
发生了 Oracle 错误。
注解
基础数据类型必须始终相同。 例如,如果要从 NClob进行复制,则目标 OracleLob 也必须是 NClob。
如果目标偏移量超出目标 LOB
末尾, LOB
则会将数据复制到的 扩展。 末尾LOB
与末尾之外的目标偏移之间的空间填充数据类型的BLOB
零,数据类型的空格填充和数据类型的CLOB
NCLOB
空格。
若要写入 到 , LOB
必须在 SQL SELECT 语句中使用 FOR UPDATE 子句检索 LOB
,并且必须启动本地事务。
注意
在此版本中,对只读 LOB
的写入操作可能会成功,但不会更新 LOB
服务器上的 。 但是,在这种情况下,将更新 的 LOB
本地副本。 因此,稍后对 OracleLob 对象的读取操作可能会返回写入操作的结果。
在执行复制操作之前, CopyTo
方法不会清除目标 OracleLob
的内容。
适用于
CopyTo(OracleLob, Int64)
public:
long CopyTo(System::Data::OracleClient::OracleLob ^ destination, long destinationOffset);
public long CopyTo (System.Data.OracleClient.OracleLob destination, long destinationOffset);
member this.CopyTo : System.Data.OracleClient.OracleLob * int64 -> int64
override this.CopyTo : System.Data.OracleClient.OracleLob * int64 -> int64
Public Function CopyTo (destination As OracleLob, destinationOffset As Long) As Long
参数
- destinationOffset
- Int64
要复制到的偏移量。 对于 CLOB
和 NCLOB
数据类型,它必须为偶数字节数。
返回
已复制的字节数。 这排除了所有已填充的字节。
例外
destination
参数中指定的 OracleLob 为 null。
destinationOffset
参数中指定的值小于零,或大于 4 GB。
- 或 -
destinationOffset
参数中为 CLOB
或 NCLOB
数据类型指定的值不是偶数。
- 或 -
必须将 CLOB
和 NCLOB
数据类型指定为偶数字节数。
该操作未处在事务中,OracleLob 对象为 null,或者连接已关闭。
发生了 Oracle 错误。
注解
基础数据类型必须始终相同。 例如,如果要从 NClob进行复制,则目标 OracleLob 也必须是 NClob。
如果目标偏移量超出目标 LOB
末尾, LOB
则会将数据复制到的 扩展。 结束LOB
与目标偏移量超出末尾之间的空间填充数据类型的BLOB
零,以及数据类型的NCLOB
空格CLOB
。
若要写入 到 , LOB
必须在 SQL SELECT 语句中使用 FOR UPDATE 子句检索 LOB
,并且必须启动本地事务。
注意
在此版本中,对只读 LOB
的写入操作可能会成功,但不会更新 LOB
服务器上的 。 但是,在这种情况下,会更新 的 LOB
本地副本。 因此,稍后对 OracleLob 对象的读取操作可能会返回写入操作的结果。
在执行复制操作之前, CopyTo
方法不会清除目标 OracleLob
的内容。
适用于
CopyTo(Int64, OracleLob, Int64, Int64)
public:
long CopyTo(long sourceOffset, System::Data::OracleClient::OracleLob ^ destination, long destinationOffset, long amount);
public long CopyTo (long sourceOffset, System.Data.OracleClient.OracleLob destination, long destinationOffset, long amount);
member this.CopyTo : int64 * System.Data.OracleClient.OracleLob * int64 * int64 -> int64
override this.CopyTo : int64 * System.Data.OracleClient.OracleLob * int64 * int64 -> int64
Public Function CopyTo (sourceOffset As Long, destination As OracleLob, destinationOffset As Long, amount As Long) As Long
参数
- sourceOffset
- Int64
要从中复制的偏移量。 对于 CLOB
和 NCLOB
数据类型,它必须为偶数。
- destination
- OracleLob
目标 OracleLob
System.Data.OracleClient。
- destinationOffset
- Int64
要复制到的目标偏移量。 对于 CLOB
和 NCLOB
数据类型,它必须为偶数。
- amount
- Int64
要复制的数据数量(以字节为单位)。 对于 CLOB
和 NCLOB
数据类型,它必须为偶数。
返回
已复制的字节数。 这排除了所有已填充的字节。
例外
destination
参数中指定的 OracleLob 为 null。
amount
、sourceOffset
或 destinationOffset
参数中指定的值小于零,或大于 4 GB。
- 或 -
在 amount
、sourceOffset
或 destinationOffset
参数中为 CLOB
或 NCLOB
数据类型指定的值不是偶数。
该操作未处在事务中,OracleLob 对象为 null,或者连接已关闭。
发生了 Oracle 错误。
注解
基础数据类型必须始终相同。 例如,如果要从 NClob进行复制,则目标 OracleLob 也必须是 NClob。
如果目标偏移量超出目标 LOB
末尾, LOB
则会将数据复制到的 扩展。 结束LOB
与目标偏移量超出末尾之间的空间填充数据类型的BLOB
零,以及数据类型的NCLOB
空格CLOB
。
若要写入 到 , LOB
必须在 SQL SELECT 语句中使用 FOR UPDATE 子句检索 LOB
,并且必须启动本地事务。
注意
在此版本中,对只读 LOB
的写入操作可能会成功,但不会更新 LOB
服务器上的 。 但是,在这种情况下,会更新 的 LOB
本地副本。 因此,稍后对 OracleLob 对象的读取操作可能会返回写入操作的结果。
在执行复制操作之前, CopyTo
方法不会清除目标 OracleLob
的内容。