OracleLob.CopyTo Method (OracleLob, Int64)


Copies from this OracleLob to a destination OracleLob with the specified amount of data.

Namespace:   System.Data.OracleClient
Assembly:  System.Data.OracleClient (in System.Data.OracleClient.dll)

member CopyTo : 
        destination:OracleLob *
        destinationOffset:int64 -> int64


Type: System.Data.OracleClient.OracleLob

The destination OracleLob

Type: System.Int64

The offset to which to copy. For CLOB and NCLOB data types, this must be an even number of bytes.

Return Value

Type: System.Int64

The number of bytes copied. This excludes any padded bytes.

Exception Condition

The OracleLob specified in the destination parameter is full.


A value specified in the destinationOffset parameter is less than zero or greater than 4 gigabytes.


A value specified in the destinationOffset parameter for a CLOB or NCLOB data type is not even.


You must specify CLOB and NCLOB data types as an even number of bytes.


The operation is not within a transaction, the OracleLob object is null, or the connection is closed.


An Oracle error has occurred.

The underlying data types must always be the same. For example, if you are copying from an NClob, the destination OracleLob must also be an NClob.

If the destination offset is beyond the end of destination LOB, the LOB to which the data is being copied is extended. The space between the end of LOB and destination offset beyond the end is padded with zeros for BLOB data types and spaces for CLOB and NCLOB data types.

To write to the LOB, you must have retrieved the LOB using the FOR UPDATE clause in the SQL SELECT statement, and you must have a local transaction started.


In this release, a write operation to a read-only LOB might succeed, but does not update the LOB on the server. In this case, however, the local copy of the LOB is updated. Therefore, later read operations on the OracleLob object might return the results of the write operation.

The CopyTo method does not clear the contents of the destination OracleLob before performing the copy operation.

.NET Framework
Available since 1.1
Return to top