Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование лекции.doc
Скачиваний:
49
Добавлен:
12.11.2019
Размер:
5.53 Mб
Скачать

32.2. Вычисляемые поля

Помимо фиктивных полей, данные для которых берутся из другой таблицы, можно создать так называемое вычисляемое фиктивное поле, значение которого рассчитывается в самой программе. Например, в нашей программе некрасиво отображается поле SUBTITLES (наличие субтитров) – мы видим в нем значения 0 и 1 вместо "есть" и "нет". Заводить отдельную таблицу ради всего двух значений не хочется.

Выполните следующие действия: щелкните правой кнопкой мыши на запросе DVD в модуле данных и выберите пункты меню Fields Editor  New field. Открывается уже известное вам окно добавления фиктивного поля. Заполните его, как показано на Рис. 32 .128.

Рис. 32.128 Добавление вычисляемого поля.

В запрос DVD добавлено фиктивное поле VTITLE типа String длиной 10 символов, значения в которое будет заносить сама программа. Каким образом? Выполняя обработчик события OnCalcFields запроса DVD. В этом обработчике напишите следующий код:

procedure Tdm.dvdCalcFields(DataSet: TDataSet);

begin

IF dvd.FieldByName('SUBTITLES').AsBoolean THEN

dvdvtitle.AsString:='есть'

ELSE

dvdvtitle.AsString:='нет'

end;

Данный фрагмент проверяет текущее значение настоящего поля SUBTITLES и, если оно содержит значение True, записывает в фиктивное вычисляемое поле строку "есть", а в противном случае – строку "нет".

Переключитесь на главную форму, войдите в режим редактирования колонок компонента DBGrid и у колонки SUBTITLES поменяйте значение свойства FieldName на VTITLE. Запустите программу – результат налицо. Единственный недостаток вычисляемого поля – его нельзя редактировать пользователю, ведь внесенные изменения сохранять негде.

33.Субд Interbase

InterBase — это система управления реляционными базами данных, поставляемая корпорацией Borland для построения приложений с архитектурой клиент-сервер произвольного масштаба: от сетевой среды небольшой рабочей группы с сервером под управлением Novell NetWare или Windows NT на базе IBM PC до информационных систем крупного предприятия на базе серверов IBM, Hewlett-Packard, SUN и т.п. Начиная с момента своего выхода, т.е. 1985 года, Interbase был Unix-ориентированным сервером баз данных. К 2000 году Interbase поддерживает ОС Windows, Solaris (SPARC) и Linux.

Interbase поддерживает работу с данными самого различного объема. Средние объемы данных, с которыми работают приложения, делятся на четыре группы: небольшие - от 30 до 500 мегабайт; средние 1 - от 500 мегабайт до 2 гигабайт, средние 2 - от 2 гигабайт до 8 гигабайт; и большие, или даже экзотические - от 8 гигабайт до 980 гигабайт, встречающиеся в единичных случаях. В процентном отношении по количеству приложений такие объемы соответственно составляют 47%, 35%, 7% и 3%.

Благодаря тому, что Interbase требует наличия минимума файлов для установки (6 файлов, и 2 ключа в системном реестре), а также весьма нетребователен к ресурсам, максимальное количество приложений, его использующих - офисные системы общего назначения. Это складской учет, бухгалтерия, зарплата, автоматизация отделов продаж, и многое другое.

В пакет Delphi версии входит однопользовательская версия InterBase для Windows — Local InterBase. Используя Local InterBase, можно создавать и отлаживать приложения, работающие с данными по схеме клиент-сервер, без подключения к настоящему серверу. В дальнейшем потребуется только перенастроить используемый алиас базы данных, и программа будет работать с реальной базой без перекомпиляции. Максимальный размер базы данных для Local Interbase рекомендуется не более 10 GB.