1.8.24. TbtkScriptOraLobLocator¶
-
class
TbtkScriptOraLobLocator
¶ Вспомогательный класс для прямой работы с Lob-локатор-ами на сервере. Класс хранит идентификатор локатора на сервере(Handle предоставляемый OCI) и предоставляет набор методов для работы с ним. Для работы с экземплярами данного класса при передаче в запросы следует использовать тип
ftOraLobLocator
.Главной отличительной особенностью работы с блобами через локатор является тот факт что чтение/запись осуществляются без кеширования - потоково. Это снимает ограничение на количество данных со стороны клиента. Прочие же способы работы с блобами ограничены объёмом доступной оперативной памяти.
Методы загрузки/сохранения работающие с файлом (
LoadFromFile
,SaveToFile
) ограничений по объёму не имеют. Методы жеWriteData
иReadData
ограничены доступным объёмом оперативной памяти, т.к. работают с Variant-массивом хранящимся в памяти приложения; реализованы для совместимости с ранее имевшимися методами работы с блобами, такими какLoadFromFileToBlob
.Note
- Время жизни экземпляра lob-локатора управляется счётчиком ссылок.
- Экземпляр lob-локатора всегда привязан к одной конкретной сессии в рамках которой он был создан,
если сессия закрыта, то возможность обратиться к клиентскому экземпляру остаётся валидной, но попытки
оперировать данными на сервере будут возвращать cоответствующую ошибку. Если не известно состояние
серверного объекта - следует проверять свойство
TbtkScriptOraLobLocator.IsInit
.
New in version BtkRuntime: 5.4.0.3582 ms 1
-
Length
: Integer¶ Количество байт в данном курсоре.
Аттрибут только для чтения
Return type: Integer
-
IsTemporary
: Boolean¶ Проверить является ли данный курсор временным.
Аттрибут только для чтения
Return type: Boolean
-
IsInit
: Boolean¶ Проверить инициализирован ли данный локатор, имеется ли связь с объектом на сервере. Свойство корректно отработает как в случае когда объект не связан с данными на сервере (не инициализирован), так и если сессия была закрыта - вернёт False; в противном случае, если связь имеется и, соответственно, доступна работа с данными локатора (на сервере) - возвращается True.
Аттрибут только для чтения
Return type: Boolean
-
IsClob
: Boolean¶ Проверить является ли данный курсор клобом.
Аттрибут только для чтения
Return type: Boolean
-
IsBlob
: Boolean¶ Проверить является ли данный курсор блобом.
Аттрибут только для чтения
Return type: Boolean
-
WriteData
(Data: Array)¶ Загрузить данные на сервер - в качестве данных используется Variant-массив байт в памяти скриптера.
Parameters: Data (Array) – Массив данных полученный одним из Blob-методов или методом ReadData
.
-
ReadData
(): Array¶ Скачать данные с сервера - будут размещены в памяти скриптера в виде Variant-массива байт
Return type: Array
-
LoadFromFile
(FileName: String)¶ Загрузить содержимое файла на сервер
Parameters: FileName (String) – Имя файла
-
SaveToFile
(FileName: String)¶ Скачать данные с сервера - сохранить в указанный файл.
Parameters: FileName (String) – Имя файла для сохранения данных.
-
CreateTemporary
()¶ Создать связь объекта с сервером - требуется для отправки данных на сервер.