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

Глава 3. Работа с базами данных

3.1. Основные понятия

База данных (БД) ‑ это сово­куп­ность взаимо­связанных двумер­ных таблиц. Система управления БД (СУБД) ‑ это специальный ком­плекс прог­рамм, пред­наз­начен­ных для автоматизации проце­дур создания, хранения, ведения и иcполь­зования баз данных. Су­щест­вуют персональные (FoxPro, Paradox, Access, Dbase) и много­поль­зовательские полнофункциональные, промышленные СУБД (Oracle, Inter­Base, Microsoft SQL Server, Progrеss, Informix, SyBase).

Имеется несколько архитектур использования баз данных [2; 7].

Локальная ‑ приложение и база находятся на одном компьютере (п. 3.2).

Файл‑серверная ‑ база данных находится на другом компьютере, который называется файл‑сервером, и приложение обращается за информацией к файлу‑серверу. Недостатком является перегрузка каналов связи, так как фактически вся база или ее большая часть копируется по каналам на клиентскую машину (п. 3.2).

Клиент‑серверная ‑ архитектура аналогичная предыдущей, но запрос выполняется на серверной машине, что разгружает каналы связи (п. 3.14).

Распределенная (компонентная) ‑ к серверам баз добавляются серверы при­ложений, на которых выполняются приложения клиентов. Клиентская машина служит для ввода и отображения результирующей информации.

Интернетная ‑ доступ к базе осуществляется из броузера, что максималь­но разгружает клиентскую машину (тонкий клиент) и дает возможность использовать готовые броузеры и программы.

Каждая таблица состоит из строк (записей) и столбцов (полей). Ключом таблицы (первичным ключом) называется поле (простой ключ) или комбинация из группы полей (составной ключ), однозначно опреде­ляю­щая каждую запись в таблице. Индекс (вторичный ключ) аналогичен ключу, но может быть неуникальным. Ключи и индексы используются для сортировки, поиска записей и для связывания таблиц.

Для доступа к базе используются технология Borland Database Engine (BDE) фирмы Borland или ActiveX Data Objects (ADO) фирмы Microsoft (п. 3.14). Доступ к базе осуществляется через специальные драйверы. Используя данные технологии, мож­но не привязывать программу к конкретной СУБД, переходить к дру­гой СУБД, изменяя только настройку BDE или внешние источники ODBC для ADO, а не исходные тексты приложе­ния.

Р еко­мен­дует­ся следующий порядок создания простого приложения, использующего базу данных (если уже база создана средствами СУБД, то шаги 1, 3, 4 пропускаются):

  1. Создается отдельная папка для приложения под именем при­ло­­же­ния. В эту папку помещаются все компоненты приложения и сама база.

  2. Средствами администратора BDE или ODBC база регистрируется c ука­­за­нием данных о базе, типе СУБД и имени алиасы (псевдодима) для BDE или внешнего источника данных ODBC для ADO.

Р еко­мен­дуется вместо алиасы BDE создавать внешний источник данных ODBC средствами администратора ODBC и использовать его при работе с технологиями BDE и ADO (п. 3.14).

  1. Вызывается Delphi, затем Database Desktop и ус­та­нав­ли­вается ра­бо­­чий каталог на папку с приложением (выбором нужной алиасы).

  2. Средствами Database Desktop создаются исходные свободные таб­ли­цы базы данных.

Р еко­мен­дуется не связывать эти таблицы и не запол­нять их данными (буквы кириллицы нельзя использовать при вводе дан­ных). Работа с Database Desktop заканчивается.

Для существующих баз данных шаги 3 и 4 пропускаются.

  1. Создается модуль базы данных (п. 3.3). Компонентам Table и Data Source прис­ваивают­ся подходящие имена для исходных таблиц латинскими буквами. Свойству таблицы Active прис­ва­ива­ется значение True (если есть ошибки, то выведется сообщение).

  2. Свойству таблицы Active прис­ва­ива­ется значение False, и фор­ми­руются поля соответствия LookUp (п. 3.6) и вычисляемые поля и проце­ду­ры формирования их значений.

  3. Для всех полей таблиц в свойстве поля Display­La­bel прис­ва­иваются их наименования на русском языке и устанавливается нужный порядок их следования.

  4. Создаются базовый и другие зап­ро­сы (п. 3.7.1).

  5. Аналогично таблицам формируются наименования полей.

  6. Свойству таблиц и запросов Active прис­ва­ива­ется значение True.

  7. Модуль базы сохраняется под именем DataModule. При исполь­зо­вании этого модуля в других мо­ду­лях (формах) этого приложения его нужно подключать командой File/Use Unit. Мо­дуль подключается к другому приложению командой Project/Add to Project.

  8. Для таблиц и запросов создаются формы (Window­State=wsMaximized) вход­ных документов для их заполнения и просмотра с подключением модуля базы данных. На формах размещаются ком­по­нен­ты DBNa­v­igator (DataSource, Align=alBottom), DBGrid (DataSource, Align=alClient). Устнавливаются нужные размеры колонок форм.

  9. Создается пустая стартовая форма (WindowState=wsMaximized). Командой File/Use Unit подключаются все модули. На форме формируется меню вы­зова форм входных документов и других модулей.

  10. Выполняется приложение и заполняются родительские, а затем дочерние таблицы базы данных.

  11. Формируются запросы, диаграммы, отчеты, другие компоненты.

  12. Сформированное ранее меню дополняется новыми пунктами.

  13. Проверяется приложение, и его разработка завершается.