OracleLob.CopyTo Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
CopyTo(OracleLob) |
Копирует из данного объекта OracleLob в объект назначения — OracleLob. |
CopyTo(OracleLob, Int64) |
Копирование из данного объекта OracleLob в объект назначения — OracleLob с указанным объемом данных. |
CopyTo(Int64, OracleLob, Int64, Int64) |
Копирует из данного объекта OracleLob в OracleLob, являющийся объектом назначения, с указанным объемом данных и смещением источника. |
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
Параметры
Возвращаемое значение
Скопированное число байт. В это число не входят дополненные нулевые байты.
Исключения
Значение OracleLob, указанное в параметре destination
, является пустым.
Операция выполняется не в рамках транзакции, объект OracleLob является пустым, или же закрыто подключение.
Произошла ошибка Oracle.
Комментарии
Базовые типы данных всегда должны быть одинаковыми. Например, при копировании из NClob, назначением OracleLob также должен быть NClob.
Если целевое смещение находится за пределами конечной точки назначения LOB
, то расширяется объект , LOB
в который копируются данные. Пространство между концом LOB
и смещением назначения за пределами конца заполняется нулями для BLOB
типов данных и пробелами для CLOB
типов данных и NCLOB
.
Чтобы выполнить запись в LOB
, необходимо получить LOB
с помощью предложения FOR UPDATE в инструкции SQL SELECT и запустить локальную транзакцию.
Примечание
В этом выпуске операция записи в доступную только 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
это количество байтов должно быть четным.
Возвращаемое значение
Скопированное число байт. В это число не входят дополненные нулевые байты.
Исключения
Значение OracleLob, указанное в параметре destination
, является полным.
Значение, указанное в параметре destinationOffset
, меньше нуля или больше 4 гигабайт.
-или-
Значение, указанное в параметре destinationOffset
для типа данных CLOB
или NCLOB
, не является четным.
-или-
Необходимо указать типы данных CLOB
и NCLOB
с четным количеством байтов.
Операция выполняется не в рамках транзакции, объект OracleLob является пустым, или же закрыто подключение.
Произошла ошибка Oracle.
Комментарии
Базовые типы данных всегда должны быть одинаковыми. Например, при копировании из NClob, назначением OracleLob также должен быть NClob.
Если целевое смещение находится за пределами конечной точки назначения LOB
, то расширяется объект , LOB
в который копируются данные. Пространство между концом LOB
и конечным смещением за пределами конца заполняется нулями для BLOB
типов данных и пробелами для CLOB
типов данных и NCLOB
.
Чтобы выполнить запись в LOB
, необходимо получить LOB
с помощью предложения FOR UPDATE в инструкции SQL SELECT и запустить локальную транзакцию.
Примечание
В этом выпуске операция записи в доступную только 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
это число должно быть четным.
Возвращаемое значение
Скопированное число байт. В это число не входят дополненные нулевые байты.
Исключения
Значение OracleLob, указанное в параметре destination
, является полным.
Значение, заданное для параметра amount
, sourceOffset
или destinationOffset
меньше нуля или больше 4 гигабайт.
-или-
Значение, заданное для параметра amount
, sourceOffset
или destinationOffset
для данных типа CLOB
или NCLOB
не является четным.
Операция выполняется не в рамках транзакции, объект OracleLob является пустым, или же закрыто подключение.
Произошла ошибка Oracle.
Комментарии
Базовые типы данных всегда должны быть одинаковыми. Например, при копировании из NClob, назначением OracleLob также должен быть NClob.
Если целевое смещение находится за пределами конечной точки назначения LOB
, то расширяется объект , LOB
в который копируются данные. Пространство между концом LOB
и конечным смещением за пределами конца заполняется нулями для BLOB
типов данных и пробелами для CLOB
типов данных и NCLOB
.
Чтобы выполнить запись в LOB
, необходимо получить LOB
с помощью предложения FOR UPDATE в инструкции SQL SELECT и запустить локальную транзакцию.
Примечание
В этом выпуске операция записи в доступную только LOB
для чтения операцию может завершиться успешно, но не обновляет LOB
на сервере. Однако в этом случае локальная копия LOB
обновляется. Поэтому последующие операции чтения объекта OracleLob могут возвращать результаты операции записи.
Метод CopyTo
не очищает содержимое места назначения OracleLob
перед выполнением операции копирования.