- •О. Б. Малков работа с базами данных в среде delphi Учебное пособие для студентов заочной формы обучения
- •Содержание
- •1. Реализация работы с базами данных в среде delphi
- •1.1. Базы данных и системы управления базами данных
- •1.2. Технология доступа к данным bde
- •1.3. Компоненты приложений, работающих с базами данных
- •2. Демонстрационная база данных
- •2.1. Логическая модель данных предметной области
- •2.2. Физическая модель данных предметной области
- •3. Создание базы данных
- •3.1. Создание псевдонима
- •3.2. Создание структуры таблиц базы данных
- •3.3. Свойства таблиц Paradox
- •3.4. Заполнение таблиц базы данных
- •4. МодулЬ данных
- •4.1. Создание модуля данных
- •4.2. Связывание наборов данных
- •4.3. Создание объектов-полей
- •4.4. Проектирование и анализ структуры базы данных
- •4.5. Создание объектов-столбцов
- •4.6. Реализация бизнес-правил
- •5. Создание приложения, работающего с базой данных
- •5.1. Выбор типа пользовательского интерфейса
- •5.2. Создание главной формы
- •5.3. Создание рабочих форм
- •5.4. Создание форм ввода новых данных
- •6. Создание запросов
- •6.1. Компонент Query
- •6.2. Создание sql-запросов
- •6.2.1. Простая выборка данных
- •6.2.2. Выборка из связанных таблиц
- •6.2.3. Сортировка записей
- •6.2.4. Сложные критерии отбора
- •6.2.5. Псевдонимы таблиц и комментарии
- •6.2.6. Агрегатные функции и группировка записей
- •6.2.7. Создание и удаление таблиц и индексов
- •6.2.8. Вставка, удаление и редактирование записей
- •Insert into Имя_таблицы (Список_полей
- •Values (Список_значений)
- •6.3. Построение запроса в демонстрационной базе данных
- •7. Создание отчетов
- •7.1. Основы технологии Rave Reports
- •7.2. Визуальная среда Rave Designer
- •7.3. Составляющие проекта отчета
- •7.3.1. Библиотека отчетов
- •7.3.2. Каталог глобальных страниц
- •7.3.3. Каталог объектов данных
- •7.4. Типы отчетов
- •7.4.1. Отчет с единственной таблицей или запросом
- •7.4.2. Отчет главный-детальный
- •7.4.3. Группирующий отчет
- •7.5. Пример создания отчетов в приложении Sale
- •7.6. Экспорт отчета в файл
- •8. Создание СправочнОй системЫ
- •8.1. Создание файла документа справочной информации
- •8.2. Создание проекта справочной системы
- •8.3. Доступ к справочной информации
- •9. Создание установочного диска
- •9.1. Программа InstallShield Express
- •9.2. Создание проекта инсталляционной программы
- •Библиографический список
1. Реализация работы с базами данных в среде delphi
1.1. Базы данных и системы управления базами данных
База данных (БД) – это унифицированная совокупность данных, совместно используемая различными задачами в рамках некоторой единой автоматизированной информационной системы. Доступ к БД осуществляется с помощью одного или нескольких компьютеров. Обычно БД создается для хранения и доступа к данным, содержащим сведения о некоторой предметной области, то есть некоторой области человеческой деятельности или области реального мира.
Система управления базами данных (СУБД) – это программное средство, предназначенное для выполнения операций над БД (создание, наполнение, обновление, удаление).
В зависимости от расположения отдельных частей СУБД различают локальные и сетевые СУБД. Все части локальной СУБД размещаются на компьютере пользователя БД. Чтобы с одной БД одновременно могло работать несколько пользователей, каждый пользовательский компьютер должен иметь свою копию локальной БД.
Существенной проблемой СУБД такого типа является синхронизация копий данных. Поэтому для решения задач, требующих совместной работы нескольких пользователей, локальные СУБД практически не используются.
В данном учебном пособии рассматривается процесс создания приложения локальной программной архитектуры. В такой архитектуре работает большинство настольных приложений, работающих с БД.
В основе подавляющего большинства существующих СУБД лежит реляционная модель данных. Структурной единицей реляционной БД является таблица.
Каждая таблица представляет собой совокупность строк и столбцов, где строки соответствуют экземпляру объекта, а столбцы – атрибутам (характеристикам) этого объекта. В терминах БД столбцы таблицы называются полями, а строки – записями.
Между отдельными таблицами БД могут существовать связи. Таблицы, связанные отношениями, взаимодействуют по принципу главная (master) – детальная (detail). Главную таблицу часто называют родительской, а детальную – дочерней. Одна и та же таблица может быть главной по отношению к одной таблице БД и дочерней по отношению к другой.
В каждой таблице БД может существовать первичный ключ – поле или набор полей, однозначно идентифицирующий запись. Значение первичного ключа в таблице БД должно быть уникальным, то есть в таблице не должно существовать двух или более записей с одинаковым значением первичного ключа.
Если в таблице нет полей, значения которых уникальны, для создания первичного ключа в нее обычно вводят дополнительное числовое поле, значениями которого может распоряжаться СУБД (автоинкрементный тип). Ниже приведен пример таблицы, содержащей сведения о продаже книг (табл. 1).
Таблица 1
№ п/п |
Дата |
Название книги |
Код покупателя |
Отпущено |
1 |
10.12.03 |
Экономическая информатика |
001 |
100 |
2 |
10.12.03 |
Delphi 7. Учебный курс |
001 |
100 |
3 |
12.12.03 |
CASE-технологии |
002 |
500 |
Информация о покупателе может дополняться данными другой, дочерней, таблицы (табл. 2). Таблицы соединены по полю Код покупателя, что позволяет установить однозначную связь между ними.
Таблица 2
Код покупателя |
Покупатель |
Адрес |
Телефон |
001 |
Магазин № 12 |
644020 Омск, пр. Маркса, 89 |
40-04-00 |
002 |
Магазин № 10 |
644029 Омск, пр. Мира, 64 |
66-52-64 |
Индексы отличаются от первичных ключей тем, что не требуют непременной уникальности значений. Они устанавливаются по полям, которые часто используются при поиске и сортировке данных.
При разработке приложений для работы с БД наиболее часто решаемая задача – получение по некоторому запросу из БД и отображение на экране определенного множества записей. Иногда это множество полностью соответствует содержимому какой-либо таблицы, но чаще всего это часть таблицы или объединение записей нескольких таблиц. При этом записи могут содержать как все свои поля, так и их произвольные подмножества.
Множество записей одной или нескольких таблиц, переданное в приложение в результате выполнения запроса, принято называть набором данных (НД).
Набор атрибутов – структура, содержащая информацию о свойствах поля (тип, размер и т. д.), а также об особенностях визуализации данных этого поля.
Словарь данных – специализированная БД, используемая в Delphi, для хранения наборов атрибутов. В него могут входить структуры БД целиком. Словарь данных – это модель структуры данных, которая может быть использована при создании настоящей БД, содержащей реальную информацию.