
- •Что представляет собой база данных?
- •Каково назначение субд?
- •Охарактеризуйте известные вам архитектуры баз данных, укажите их достоинства и недостатки.
- •Дайте определение реляционной модели и назовите составляющие ее элементы.
- •Что представляет собой первичный ключ и для чего он задается?
- •Для каких целей используются индексы?
- •В чем отличие внешнего ключа от первичного?
- •Что представляет собой механизм bde?
- •Как называется утилита Delphi, служащая для создания таблиц файл-серверных бд. Какие свойства полей задаются с ее помощью?
- •10. Опишите действие механизма контроля ссылочной целостности при манипулировании данными в таблицах.
Федеральное агентство по образованию
Государственное образовательное учреждение
высшего профессионального образования
Уфимский государственный авиационный технический университет.
Кафедра ИИТ.
Лабораторная работа №1.
Создание структуры базы данных.
Выполнил: ст.гр. П-302
Бабаджанов А.Р.
Проверила: доцент
Неретина В.В.
г. Уфа-2014.
Создание структуры базы данных.
Цель работы
Целью лабораторной работы является изучение основных принципов построения реляционных баз данных и особенностей работы с СУБД в Delphi 7. На примере разработки демонстрационной базы «Книголюб» рассматривается создание структуры базы данных, т.е. формирование таблиц Paradox 7, задание их свойств и связей между ними (первичных ключей, индексов, контроля ссылочной целостности).
Задания
1. Изучите основные понятия и определения, связанные с базами данных, особенности их архитектуры.
2. Изучите основные понятия реляционной модели представления данных.
3. Ознакомьтесь с составом и структурой таблиц базы данных «Книголюб».
4. На примере создания таблицы NAKLS изучите принципы работы с утилитой Database Desktop.
5. Ориентируясь на содержимое табл. 2–6, создайте структуры таблиц NAKLS, BOOKS, FIRMS, MOVEBOOK, PAYMENTS, задайте ключевые поля, типы данных полей (см. табл. 7) и контроль за их содержимым.
6. Определите вторичные индексы для таблиц базы данных «Книголюб».
7. Для поля MNakl таблицы MOVEBOOK создайте таблицу подстановки.
8. Установите контроль ссылочной целостности для таблиц NAKLS и MOVEBOOK.
9. Установите парольную защиту для всех таблиц базы данных «Книголюб».
10. Для всех таблиц базы данных задайте языковой драйвер Pdox ANSI Cyrillic.
Перечень таблиц, входящих в базу данных «Книголюб», с указанием типов данных полей и атрибутов, являющихся первичными и внешними ключами, индексами.
Таблица NAKLS
Имя поля |
Назначение |
NaklID |
Уникальный идентификатор накладной. По этому полю нужно создать первичный ключ |
NDate |
Дата составления накладной. По этому полю нужно создать индекс для сортировки накладных по мере их поступления |
NRetDate |
Срок возврата нереализованных книг. По истечении этого срока возврат не принимается или возвращаемые книги уцениваются. Не используется в накладных обмена |
NType |
Тип накладной: 0 – покупка у поставщика; 1 – продажа покупателю; 2 – возврат поставщику; 3 – возврат от покупателя; 4 – книги получаются по обмену; 5 – книги передаются по обмену; 6 – покупка с предоплатой; 7 – продажа с предоплатой |
NFirm |
Уникальный идентификатор партнера (поле FirmID таблицы FIRMS) |
NCoeff |
Величина скидки/наценки. Переносится из поля FCoeff таблицы FIRMS, так как это поле со временем может меняться |
NSum |
Сумма накладной с учетом значения поля NCoeff |
NPayedSum |
Оплаченная сумма. Не используется в накладных обмена |
NRetSum |
Сумма возврата. Не используется в накладных обмена |
Таблица BOOKS
Имя поля |
Назначение |
BookId |
Уникальный код книги (первичный ключ) |
BName |
Название книги (индексное поле) |
BAuthor |
Автор(ы) |
BPubLish |
Издательство |
BYear |
Год выпуска |
ВPages |
Количество страниц |
BISBN |
Код ISBN |
BStand |
Стандарт упаковки (количество книг в пачке) |
BQuan |
Остаток книг на складе |
BPrice |
Цена покупки книги |
BOpt |
Цена оптовой продажи |
BRozn |
Цена розничной продажи |
Таблица FIRMS
Имя поля |
Назначение |
FirmId |
Уникальный идентификатор партнера (первичный ключ) |
FName |
Наименование партнера (индексное поле) |
FAddress |
Адрес |
FCity |
Город |
FPhone |
Телефон(ы) |
FEMail |
Адрес электронной почты |
FPerson |
Контактное лицо (лица) |
FFinDelta |
Финансовое сальдо |
FCngDelta |
Обменное сальдо |
FCoeff |
Коэффициент скидки/наценки |
FRetDays |
Количество дней для возврата |
Таблица MOVEBOOK
Имя поля |
Назначение |
MoveId |
Уникальный идентификатор (первичный ключ) |
MNakl |
Код накладной из поля NaklId таблицы NAKLS (индексное поле) |
MBook |
Код книги из поля BookId таблицы BOOKS (индексное поле) |
MQuan |
Количество экземпляров книги |
MPrice |
Цена одного экземпляра с учетом скидки/наценки |
Таблица PAYMENTS
Имя поля |
Назначение |
PayID |
Уникальный идентификатор платежного документа (первичный ключ) |
PFirm |
Код партнера из поля FirmId таблицы FIRMS |
POut |
Направление платежа: True – партнеру; False – от партнера |
PDate |
Дата платежа |
PSum |
Сумма платежа |
Связи в В СИСТЕМЕ TOAD DATA MODELER
Контрольные вопросы
-
Что представляет собой база данных?
База данных (БД) представляет собой совокупность специальным образом организованных данных, хранимых в памяти вычислительной системы и отображающих состояние объектов и их взаимосвязей в рассматриваемой предметной области.
-
Каково назначение субд?
Система управления базами данных (СУБД) – это комплекс языковых и программных средств, предназначенный для создания, ведения и совместного использования БД многими пользователями.
-
Охарактеризуйте известные вам архитектуры баз данных, укажите их достоинства и недостатки.
Локальная архитектура. И программа, и база данных расположены на одном компьютере. Чтобы с одной и той же БД одновременно могло работать несколько пользователей, каждый пользовательский компьютер должен иметь свою копию локальной БД. Существенной проблемой СУБД такого типа является синхронизация копий данных, именно поэтому для решения задач, требующих совместной работы нескольких пользователей, локальные СУБД фактически не применяются.
Файл-серверная архитектура. База данных расположена на мощном выделенном компьютере (файл-сервере), а персональные компьютеры подключены к нему по локальной сети. На этих компьютерах установлены клиентские программы, обращающиеся к базе данных по сети. Преимущество такой архитектуры заключается в возможности одновременной работы нескольких пользователей с одной базой данных, а также относительная простота ее создания и обслуживания – фактически все сводится лишь к развертыванию локальной сети и установке на подключенных к ней компьютерах сетевых операционных систем. Недостатком файл-серверных систем является значительная нагрузка на сеть.
Клиент-серверная архитектура. В такой архитектуре клиент общается с данными через специализированного посредника – сервер базы данных, который размещается на машине с данными. Сервер БД принимает запрос от клиента, отыскивает в данных нужную запись и передает ее клиенту. Таким образом, по сети передаются относительно короткий запрос и единственная нужная запись, даже если соответствующий файл с данными содержит сотни тысяч записей. Нагрузка с клиентских мест при этом снимается, так как большая часть работы происходит на сервере. СУБД автоматически следит за целостностью и сохранностью базы данных, а также контролирует доступ к информации с помощью службы паролей. Клиент-серверные СУБД допускают блокировку на уровне записи и даже отдельного поля. Это означает, что с таблицей одновременно может работать любое число пользователей, но доступ к функции изменения конкретной записи или одного из ее полей обеспечен только одному из них. Основной недостаток этой архитектуры — не очень высокая надежность. Если сервер выходит из строя, вся работа останавливается.
Распределенная архитектура. В сети работает несколько серверов, и таблицы баз данных распределены между ними для достижения повышенной эффективности. На каждом сервере функционирует своя копия СУБД. Кроме того, в подобной архитектуре обычно используются специальные программы, так называемые серверы приложений. Они позволяют оптимизировать обработку запросов большого числа пользователей и равномерно распределить нагрузку между компьютерами в сети. Если, помимо работы с данными, требуется выполнить интенсивные вычисления (например, анализ сложной информации), программы для выполнения этих задач (они обычно называются компонентами) могут автоматически запускаться на более мощных сетевых компьютерах. Это практически полностью снимает нагрузку с клиентских мест. Такая архитектура также называется компонентной. Недостаток распределенной архитектуры заключается в довольно сложном и дорогостоящем процессе ее создания и сопровождения (администрирования), а также в высоких требованиях к серверным компьютерам .
Интернет-архитектура. Доступ к базе данных и СУБД (расположенным на одном компьютере или в сети) осуществляется из браузера по стандартному протоколу. Это предъявляет минимальные требования к клиентскому оборудованию. Благородя стандартизации всех протоколов и интерфейсов взаимодействия в Интернете такие системы легко создавать и внедрять. Например, можно не организовывать локальную сеть, а обращаться к серверу через Интернет или использовать протоколы Интернета в локальной сети (в таком случае говорят о технологиях интранет). В этом случае не требуется разрабатывать специальные клиентские программы или придумывать собственные спецификации обмена данными между сервером и клиентскими местами. Достаточно использовать готовые браузеры и программные решения.