
BD_KURS_WIN / Курсовой проект
.docКурсовой проект «Разработка баз данных»
Целью курсового проекта является разработка базы данных определенной тематики в PostgreSQL. Разработка базы данных включает несколько отдельных подзадач:
-
разработка структуры таблиц и схемы данных;
-
заполнение таблиц реальными данными;
-
реализация нескольких запросов к данным на языке SQL.
Каждая бригада разрабатывает свой вариант задания. Все задания индивидуальны. Работа осуществляется поэтапно. Выполнение этапа включает в себя написание соответствующего раздела отчета и представление соответствующей части БД (именно в таком порядке). Для перехода к следующему этапу необходимо выполнить предыдущий.
Этапы работы:
-
Разработка структуры таблиц и схемы данных в удобной для восприятия форме.
-
Написание операторов SQL создания базы данных.
-
Создание базы данных.
-
Заполнение таблиц данными.
-
Реализация запросов на языке SQL.
-
Окончательное оформление и сдача отчета.
Литература по базам данных:
-
Дейт К. Введение в системы баз данных. 6-е издание. – К.: Диалектика, 1998. (бесспорно, лучшая и самая полная книга)
-
Хансен Г., Хансен Дж. Базы данных: разработка и управление. – М.: Бином, 1999. (во многом повторяет предыдущую книгу)
-
Диго С. Проектирование и использование баз данных: Учебник. – М.: Финансы и статистика, 1995.
-
Грабер М. Введение в SQL. – М.: Лори, 1996. (SQL-92 для начинающих, с большим количеством примеров)
-
Грабер М. Справочное руководство по SQL. – М.: Лори, 1998. (справочник по SQL-92)
-
Джексон. Проектирование реляционных баз данных для использования в микро-ЭВМ – М.: Мир, 1991. (инфологическое проектирование и ER–диаграммы)
Этап 1. Разработка структуры таблиц и схемы данных.
Шаги проектирования базы данных:
-
Определение цели создания базы данных.
-
Определение таблиц, которые должна содержать база данных (имя, описание).
-
Определение необходимых в таблице полей (имя, тип, описание, ограничения).
-
Определение необходимых ограничений таблиц.
Прежде чем создавать таблицы, запросы и другие объекты необходимо задать структуру базы данных. Хорошая структура базы данных является основой для создания эффективной и отвечающей требованиям базы данных.
1. Определение цели создания базы данных
На первом этапе проектирования базы данных необходимо определить цель создания базы данных, основные ее функции и информацию, которую она должна содержать. То есть нужно определить основные темы таблиц базы данных и информацию, которую будут содержать поля таблиц.
База данных должна отвечать требованиям тех, кто будет непосредственно с ней работать. Для этого нужно определить темы, которые должна покрывать база данных, отчеты, которые она должна выдавать, проанализировать формы, которые в настоящий момент используются для записи данных, сравнить создаваемую базу данных с хорошо спроектированной, подобной ей базой.
2. Определение таблиц, которые должна содержать база данных
Одним из наиболее сложных этапов в процессе проектирования базы данных является разработка таблиц, так как результаты, которые должна выдавать база данных (отчеты, выходные формы и др.) не всегда дают полное представление о структуре таблицы.
При разработке таблиц рекомендуется руководствоваться следующими основными принципами:
-
Информация в таблице не должна дублироваться. Не должно быть повторений и между таблицами.
Когда определенная информация храниться только в одной таблице, то и изменять ее придется только в одном месте. Это делает работу более эффективной, а также исключает возможность несовпадения информации в разных таблицах.
-
Каждая таблица должна содержать информацию только на одну тему.
Сведения на каждую тему обрабатываются намного легче, если содержатся они в независимых друг от друга таблицах. Например, адреса и заказы клиентов хранятся в разных таблицах для того, чтобы при удалении заказа информация о клиенте осталась в базе данных.
3. Определение необходимых в таблице полей
Каждая таблица содержит информацию на отдельную тему, а каждое поле в таблице содержит отдельные сведения по теме таблицы. Например, в таблице с данными о клиенте могут содержаться поля с названием компании, адресом, городом, страной и номером телефона. При разработке полей для каждой таблицы необходимо помнить:
-
Каждое поле должно быть связано с темой таблицы.
-
Не рекомендуется включать в таблицу данные, являющиеся результатом выражения.
-
В таблице должна присутствовать вся необходимая информация.
-
Информацию следует разбивать на наименьшие логические единицы.
Может потребоваться, чтобы данные, хранящиеся в поле таблицы, удовлетворяли одному или нескольким из следующих видов требований (ограничений):
-
Поле не может оставаться незаполненным, в нем всегда должно быть какое-то значение.
-
Все значения данного поля должны быть различными (уникальными) в рамках таблицы.
-
Поле является первичным ключом.
Чтобы было возможно связать данные из разных таблиц, например, данные о клиенте и его заказы, каждая таблица должна содержать поле или набор полей, которые будут однозначно идентифицировать каждую запись в таблице. Такое поле или набор полей называют первичным ключом.
-
Поле является внешним ключом (значения в нем должны совпадать с данными другой ранее определенной таблицы).
-
При незаполнении явным образом поля в нем будет храниться некое значение по умолчанию.
-
В поле могут храниться только значения, удовлетворяющие некоторому логическому условию.
4. Определение необходимых ограничений таблиц
Если определенному требованию должно удовлетворять не одно поле таблицы, а несколько полей в совокупности (например, составной ключ или уникальная комбинация полей), то следует использовать ограничение таблицы. Виды ограничений таблицы те же, что и ограничений полей (см. выше).