Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

2.2 Хранение OLE-объектов в базах данных

Для хранения OLE-объектов могут быть использованы как поля специальных типов (поддерживаемые, например, Paradox или dBase)., так и обычные blob-поля.

Основная идея такого приложения заключается в том, что OleContainer позволяет сохранить содержащийся в нем объект в файле или в памяти, а затем поместить его в blob-поле.

Модифицируем созданное приложение, добавив компоненты TTable, TdataSource и TDBNavigator и заменив надписи на кнопках на "Сохранить" и "Показать". Создадим копию таблицы biolife.db из набора демонстрационных примеров, свяжем с ней компонент TTable и создадим набор объектов TFields. Свяжем TDataSource c TTable и TDBNavigator с TDataSource.

Изменим обработчики событий:

void __fastcall TForm1::Button2Click(TObject *Sender)
{
if (OleContainer1->OleObjectInterface!=NULL)// определим, не пуст ли контейнер
{OleContainer1->SaveToFile("aaa.dat");
Table1->Edit();
Table1Graphic->LoadFromFile("aaa.dat");}
}
//-----------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Table1Graphic->SaveToFile("aaa.dat");
OleContainer1->LoadFromFile("aaa.dat");
}

Теперь, если TOleContainer не пуст, при нажатии на кнопку "Сохранить" его содержимое сохранится в blob-поле таблицы, а при нажатии на кнопку "Показать" OLE-объект из blob-поля отобразится в TOleContainer.

Рисунок 12

Рис.12. Неактивный OLE-объект, изъятый из blob-поля при нажатии на кнопку "Показать"

Назад | Содержание | Вперед

 

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...