M Y D E L P H I 7 . R U Самоучитель программирования  
 
  • Главная
  •  

     

    Работа с данными типа BLOB

    Если набор данных сервера содержит большие поля (например, изображения), передача данных по медленному каналу займет очень много времени,

    что, несомненно, снизит эффективность приложения. Простейшее решение проблемы — передача клиенту данных типа BLOB только в том случае, когда это ему действительно необходимо — т. е. исключительно по его запросу.

    В компоненте TCHentDataSet процессом передачи полей типа BLOB можно управлять, используя свойство

    property FetchOnDemand: Boolean;

    По умолчанию оно равно значению True и клиентский набор данных "выкачивает" данные BLOB по мере необходимости автоматически. Это означает, что приложение будет останавливаться и заново получать данные при любом просмотре данных, прокрутке и т. д. Если свойство имеет значение False, для получения данных клиент должен явно вызвать метод

    procedure FetchBlobs;

    Но, кроме этого, в свойстве options компонента-провайдера TDataSetProvider обязательно должно быть установлено значение:

    poFetchBlobsOnDemand := True;