База данных "Телефонный справочник"

Автор работы: Пользователь скрыл имя, 25 Декабря 2013 в 23:23, курсовая работа

Краткое описание

Данная курсовая работа выполнена в СУБД Microsoft Access, входящее в прикладной пакет Microsoft Office. Созданная программа обладает рядом достоинств :
1. Легкий способ ввода или удаления.
2. Удобный дизайн программы с понятным интерфейсом и оригинальными кнопочными формами

Содержание

Введение.………………………………………………………………….………...4
1 Общие понятия и определения…………………………………………….…….5
2 Анализ заданной предметной области, потребности различных категорий пользователей разрабатываемой БД……………………………………..………..8
3 Разработка и описание концептуальной схемы и подсхем БД ..…..………….9
4 ER-Win ………………………………………………………….………….……14
5 Преобразование схемы и подсхем в реляционную БД………..……..………19
6 Нормализация реляционной БД…………………...………………….…..……21
1НФ…………………………………………………………………………….…..21
2НФ…………………………………………………………………………….…..21
3НФ…………………...………………………………………………………..…..22 7 Разработка запросов в SQL………….……………………………………….…23
8 Объединение компонентов базы данных в единое приложение…………….27
Заключение ………………………………………………………………….…….29
Список литературы ………………………………………………………….……30

Вложенные файлы: 1 файл

Испр. Курс БД.docx

— 769.42 Кб (Скачать файл)

Подсхемы  базы данных

 

 

Рис. 2 - Подсхема «Клиенты».

 

Рис. 3 - Подсхема «Оплатить».

 

Рис. 4 - Подсхема «Учет переговоров».

 

 

Рис. 5 - Подсхема «Льготы».

    1. Создание ER-модели в среде ER-Win

 

Запустить ERWin и выбрать режим создания новой модели (Create a new model) или открытия существующей (Open an existing file).

Выбрать тип новой модели (New model type): логическая, физическая или модель, которая допускает преобразование одной в другую. Поскольку нужно спроектировать БД, следует выбрать логико-физическую модель.

Для построения ER-моделей используется инструментальная панель, состав которой зависит от выбранного стандарта представления моделей и типа модели: логическая или физическая. В данной работе рекомендуется использовать стандарт IDEF1X (Integration DEFinition for information modeling), в котором используются представленные в таблице обозначения.

Прежде  всего следует разместить диаграммы  блоки сущностей. Выбрать блок сущности (Entity) на панели главного меню с помощью щелчка левой клавишей и разместить в поле проектирования модели (переместить курсор и щелкнуть левой клавишей); в результате в поле проектирования будет размещен блок сущности с именем по умолчанию «E/1».

С помощью  пункта главного меню «Model / Entities» или  пункта всплывающего меню (по щелчку правой клавишей в поле блока сущности) «Entity Properties» («Свойства сущности») открыть  окно для редактирования свойств  сущности: название (Name), определение (Definition), примечания (Note, Note2, Note3), определяемые пользователем свойства (UDP – User definition properties) и др.

С помощью  пункта «Object Font & Color» всплывающего меню установить параметры шрифта названия сущности и цвет заполнения поля блока.

При разработке ER-модели можно установить параметры  шрифтов и цветовое оформление так, чтобы облегчить обзор и понимание  модели.

Можно изменить установки шрифтов по умолчанию  для всех объектов, для отдельных  объектов или для групп выделенных объектов.

Когда добавляется  объект в окно диаграммы, ERWin автоматически  назначает шрифт по умолчанию. Для  изменения параметров шрифтов, задаваемых по умолчанию, используется диалоговое окно «Default Fonts & Colors», которое вызывается из всплывающего меню (после щелчка правой клавишей на поле диаграммы).

Параметры шрифта можно установить с помощью  главного меню, аналогично установкам, выполняемым в офисных программах.

С помощью  пункта «Attributes …» всплывающего меню и соответствующих форм ввести данные об атрибутах выбранной сущности:

нажать кнопку «New»;

заполнить поля «Attribute Name» и «Column Name» (не обязательно) формы «New Attribute», предварительно выбрав тип данных для атрибута; названия атрибутов можно задавать с помощью шрифтов типа «Кириллица» или «Латиница» (при этом следует учитывать возможности СУБД, которые будут использоваться для сопровождения БД; при использовании СУБД типа Access можно использовать имена сущностей и атрибутов на русском языке);

Рис. 6 – Логическая модель в ERWIN.

Рис. 7 – Физическая модель в ERWIN.

 

Генерация файлов БД

Для последующей  генерации файла (файлов) БД создать  с помощью заданной СУБД (в данном случае, Access) пустой файл БД (эта операция может быть выполнена до разработки ER-модели).

Выбрать сервер или СУБД, которая будет  использоваться для работы с создаваемой  БД через пункты главного меню «Database / Choose Database» и окно «Target server» («целевой сервер») с переключателями.

 

Рис. 8 – окно «Target server».

С помощью меню «Database / Database Connection»  открыть окно для ввода параметров связи ER-модели с БД следует ввести имя пользователя «admin», затем выбрать  с помощью клавиши «Browse» и  диалогового окна путь и имя файла  БД, нажать клавишу «Connect» (будет  выполнена связь ER-модели с файлом БД).

Рис 9 – Диалоговое окно «Access Connection».

С помощью меню «Tools / Forward Engineer/Schema Generation» открыть окно для проверки и изменения параметров генерации  файлов БД

 

Рис 10 – Окно «Main Subject Area».

 

Нажать  клавишу «Generate»; в окне будут выведены операторы, выполненные при генерации файлов БД.

 

 

Рис. 11 – Диалоговое окно «Generate Database Schema».

В случае успешного окончания процесса генерации  файлов БД («Schema Generation Complete» - «Генерация схемы выполнена») в ранее созданной БД будут находиться соответствующие таблицы и схема БД.

 

 

 

 

 

 

 

    1. Преобразование схемы и подсхем в реляционную БД

  В реляционной модели данных связывание таблиц осуществляется по принципу: главное – подчиненная. Для связи связанные таблицы должны иметь одинаковые столбцы, по которому осуществляется связь. Одна и та же таблица может быть главной по отношению к одной таблице и подчиненной по отношению к другой таблице.

 Табличное  представление данных имеет отношение  только к логике данных, физически  они могут быть размещены по  другим принципам. Если в разных  таблицах повторяется один и  тот же атрибут (для связи  таблиц) это не значит что эти  данные соберутся в физических  записях.

 В  каждой таблице БД должны быть  первичные ключи, которые представляют  собой одно или несколько полей  таблицы, однозначно идентифицирующих  запись. Значение первичного ключа  в таблице должно быть уникальным.

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

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

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

 Значение  вторичных ключей может быть  не уникальным и они не используются  для однозначной идентификации  конкретных записей. Они используются  для поиска записей, удовлетворяющим  конкретным условиям поиска записей  по значению вторичного ключа.

 

Создать структуру  таблицы  «Клиенты»,

  • В окне БД CL закладку «Таблицы», CL кнопку «Создать»
  • CL пункт «Конструктор», CL кнопку «ОК»
  • В появившемся окне в столбце «Имя поля» ввести имена полей
  • В столбце «Тип данных» CL и выбрать нужный тип.
  • Задать ключевое поле - RCL на имени поля, в меню CL пункт «Ключевое поле» (в левой части строки появится изображение ключа)
  • Сохранить структуру  таблицы - CL кнопку «Сохранить» на панели инструментов, ввести имя таблицы, CL кнопку «ОК»

           Рис. 12 – Создание таблицы «Клиенты» в режиме конструктора.

Создать схему  данных (указать связи)

  • Нажать кнопку Схема Данных
  • RCL, выбрать пункт «Показать таблицу»,

выделить  таблицы, нажать кнопку Добавить, нажать Закрыть 

  • Установить связи по общим полям методом ДД перетаскивая их от главной таблицы Предприятие к связанной.
  • Сохранить схему данных, закрыть окно.

 

Рис. 13 – Схема данных.

 

 

 

6 Нормализация реляционной БД

Нормализация - это такой способ описания данных, который:

понятен пользователю, не имеющему особых навыков в программировании;

позволяет подсоединять новые элементы данных, записи, связи без изменения  существующих подсхем и, следовательно, прикладных программ;

допускает максимальную гибкость при  обработке непредсказуемых или  случайных запросов с терминалов.

Сам процесс нормализации проводится по следующей схеме:

1 шаг. Приведение таблиц к  первой нормальной форме.

2 шаг. Приведение ко второй  нормальной форме.

3 шаг. Приведение к третьей  нормальной форме.

 На практике  обычно останавливаются на третьей  нормальной форме, но в теории  используются 4,5 и ряд других нормальных  форм.

 

 Заданную  таблицу “Телефонный справочник” нужно привести к 1, 2, 3 нормальной форме.

1-я  Нормальная форма

1-я нормальная  форма требует, чтобы каждое  поле таблицы было неделимым  и не содержало повторяющихся  групп, но она не обеспечивает  однозначной зависимости всех  данных от первичного ключа.  Данное условие выполнено.

2-я  Нормальная форма.

 Эта форма  требует чтобы все поля таблицы  зависели от первичного ключа.  Те поля, которые зависят от  первичного ключа (когда он  сцеплен) должны быть выделены  в отдельную таблицу. 

  Выделим первичный ключ – это поля “Код клиента”. С помощью проверки мы получили что данный ключ идентичен и все поля зависят от него т.о. 2НФ выполнена.

3-я  Нормальная форма.

Она требует, чтобы не имелось транзитивных зависимостей между не ключевыми полями.

 

 

 

 

 

 

 

 

 

 

 

 

 

7 Разработка запросов в SQL

 

Хранимые  в БД данные обычно требуют множественной  обработки. Для этого применяют  запросы, которые представляет собой  специальным образом описанные  требования, определяющие состав производимых над БД операций по выборке, удалению, модификации данных.

Для подготовки запросов в различных СУБД чаще всего  используются два основных языка:

Язык QBE (Query By Example) – язык запросов по образцу,

Язык SQL (Structured Query Language) –  структурированный язык запросов.

По возможностям манипулирования данными в запросах указанные языки практически  эквивалентны. Главное отличие заключается  в способе формирования запросов: язык QBE предполагает ручное или визуальное формирование запроса, а SQL использует программирование запроса.

Теоретической основой языка QBE является реляционное  исчисление с переменными - доменами. Язык позволяет задавать сложные  запросы к БД заполнением запросной  формы, имеющей вид таблицы, имена  и названия полей которой совпадают  с именами и названиями полей  соответствующих исходных таблиц. Наглядными являются запросные формы в Access.

Язык SQL предназначен для выполнения операций над таблицами (создание, удаление, изменение структуры) и над данными  таблиц (выборка, изменение, добавление, удаление), и некоторых сопутствующих  операций. SQL является непроцедурным  языком и не содержит операторов управления, организации подпрограмм, ввода-вывода и т.п. В связи с этим SQL обычно встраивается в СУБД (например, СУБД ACCESS, FoxPro СУБД.).

В современных  СУБД с интерактивным интерфейсом  можно создавать запросы, как  было сказано, например, с помощью  языка QBE. Однако применение SQL часто  позволяет повысить эффективность  обработки данных. Так, при подготовке запроса в ACCESS можно перейти из окна Конструктора запросов (формулирование запроса по образцу на языке QBE) в  окно с эквивалентным оператором SQL. Новый запрос можно создать  путем редактирования уже имеющегося запроса или программированием  нового.

Язык SQL не обладает функциями полноценного языка программирования, а ориентирован на доступ к данным, поэтому его  включают в состав средств разработки программ. В этом случае его называют встроенным SQL.

При построении запроса в окне конструктора система Access работает в фоновом режиме, записывая  эквивалентные инструкции SQL. Для  просмотра программы SQL в меню Вид выберите команду Режим SQL.

 

Рис. 14 – Запрос по фамилии

Код SQL:

SELECT Клиенты.[Код  клиента], Клиенты.Фамилия, Клиенты.Имя,  Клиенты.Отчество, Клиенты.Телефон,  Клиенты.Город, Клиенты.Адрес

FROM Клиенты

WHERE (((Клиенты.Фамилия)=[Введите  искомую фамилию]));

 

Рис. 15 – Запрос по телефону.

Код SQL:

SELECT Клиенты.[Код  клиента], Клиенты.Фамилия, Клиенты.Имя,  Клиенты.Отчество, Клиенты.Город, Клиенты.Телефон,  Клиенты.Адрес

FROM Клиенты

WHERE (((Клиенты.Телефон)=[Введите  искомый телефон]));

 

 

 

 

 

 

  1. Объединение компонентов базы данных в единое приложение

 

Войдите в режим создания формы конструктором  без указания источника данных.

На панели элементов отключите кнопку Мастера.

На панели элементов выберите элемент Кнопка и нарисуйте на форме в области  данных кнопки.

Для каждой кнопки вызовите контекстное меню. Выберите пункт Свойства. Перейдите  на вкладку Макет и в строке Подпись задайте название кнопки в соответствии с проектом.

Перейдите в  режим формы и просмотрите  созданный проект формы. Если он Вас устраивает, то сохраните форму.

 

 

Рис. 16 - Форма абоненты.

Информация о работе База данных "Телефонный справочник"