Автор работы: Пользователь скрыл имя, 11 Декабря 2013 в 14:17, реферат
База Данных (БД) - это информация, представленная в виде двумерных таблиц. БД содержит множество строк, каждая из которых соответствует объекту. Для каждого объекта используются определенные независимые позиции, которые называются полями. Представим себе такую БД, содержащую строки и столбцы (простейший случай). Каждая строка, называемая так же записью, соответствует определенному объекту. Каждый столбец содержит значения соответствующих данных об объекте.
Стоит заметить, что сетевые базы данных обладают примерно теми же характеристиками, что и иерархические базы данных. Но, в данной рубрике нас не сильно интересуют иерархические и сетевые базы данных, данная тема больше относится к формату XML, и возможно в рубрике посвященной языку расширяемой разметки, я постараюсь более подробно рассмотреть эту тему. А в рубрике посвященной MySQL нас интересуют реляционные базы данных, на которых мы и остановимся более подробно.
Реляционные базы данных, структура реляционных баз данных
Реляционные базы данных получили
очень широкое распространение
и многие пытаются писать огромные
статьи, посвященные вопросу –
почему реляционные базы данных получили
такое широкое распространение,
делают глубокомысленные выводы и замечания.
Но на самом деле все очень просто
– реляционные базы данных очень
легко описываются в
Особенности реляционных баз данных
Главной особенностью реляционных баз данных является, то, что объекты внутри таких баз данных хранятся в виде набора двумерных таблиц. То есть, таблица состоит из набора столбцов, в котором может указываться: название, тип данных(дата, число, строка, текст и т.д.). Еще одной важной особенность реляционных БД является, то, что число столбцов фиксировано, то есть, структура базы данных известна заранее, а вот число строк или рядов в реляционных базах данных ничем не ограничено, если говорить грубо, то строки в реляционных базах данных и есть объекты, которые хранятся в базе данных.
На самом деле, базы данных – это абстрактное понятие, таблица – это всего лишь способ хранения информации, набор таблиц может быть связан логически и этот набор называют база данных. Поэтому неправильно говорить, что MySQL это база данных, база данных – это хранящаяся информация. А вот такое понятие, как СУБД – система управления базами данных, это и есть MySQL сервер, именно при помощи него мы управляем хранящимися данными. Или иначе MySQL – это программное воплощение математических идей.
Самой трудной задачей при работе с реляционными базами данных, является проектирование структуры баз данных. Проектирование структуры базы данных, заключается не только в том, чтобы создать таблицу и указать тип данных и наименование столбцов. На самом деле проектирование – это самый сложный этап при работе с базами данных. Потому что мощности ваших компьютеров ограничены. Пока данных мало, мало таблиц и строк в этих таблицах, машина будет их обрабатывать очень и очень быстро. Но, со временем количество информации будет увеличиваться, и мы получим замедление, которое будет увеличиваться, поскольку машине необходимо время на обработку тех или иных запросов(обработка информации). В прошлой статье я уже писал, что реляционные БД прежде всего ориентированы на модификацию(OLTP), то есть, добавить новую запись в таблицу – это очень простая операция для реляционной СУБД, а вот сделать выборку данных, это уже трудоемкая операция. Также есть и изменение данных, это как бы промежуточное звено между чтением и добавлением. Хотя MySQL сервер всегда можно настроить.
5 ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
Ну что же, мы немного поговорили о достоинствах и недостатках реляционных баз данных. И теперь, вкратце, я затрону вопрос проектирования баз данных. Под проектированием я понимаю следующее: садится человек за стол, берет бумагу и ручку, и исходя из поставленной задачи, а также, исходя из достоинств и недостатков той или иной системы, в нашем случае СУБД MySQL начинает составлять структуру будущей базы данных. Требование к проектируемой базе данных обычно ставятся следующее:
База данных должна быть как можно более компактна, то есть, неизыбыточна.
База данных должна быть простой с точки зрения обработки.
И как вы, наверное, поняли,
данные требования противоречат друг
другу. Проектирование — это самый
важный аспект при работе с базами
данных. Обычно, проектировщик –
это опытный администратор
А на выходе мы должны получить так называемую диаграмму или как ее еще называют схема. Диаграмма – это определение: какая информация будет храниться, в какой таблице она будет храниться, в каком столбце какой тип данных, как называется таблица, сколько столбцов в таблице и их тип, как связаны между собой таблицы. Да, типы данных в столбцах могут быть разными, например, номер телефона или индекс можно записать, как с помощью символов, так и с помощью числового типа данных. Но появляется вопрос: какой тип данных лучше для хранения номера телефона или почтового индекса? Чисто интуитивно на этот вопрос чаще всего отвечают правильно – номер телефона в базе данных должен иметь символьный тип, а вот объяснить, почему именно символьный тип могут немногие. Объяснение очень простое, например, нам потребовались все почтовые индексы, начинающиеся на 637 или номера телефонов начинающиеся на 952, так вот, сделать такую выборку из данных имеющих числовой тип задача довольно проблематичная, а сделать такую же выборку из данных символьного типа довольно легко.
При проектировании баз данных очень часто встречаются такие задачи и поверьте, от того, как вы будете их решать, будет зависеть, то, насколько быстро будет работать ваша система.
В Microsoft Access, прежде чем создавать таблицы, формы и другие объекты необходимо задать структуру базы данных. Хорошая структура базы данных является основой для создания адекватной требованиям, эффективной базы данных.
Этапы проектирования базы данных
Ниже приведены основные этапы проектирования базы данных:
1. Определение цели создания базы данных.
2. Определение таблиц, которые должна содержать база данных.
3. Определение необходимых в таблице полей.
4. Задание индивидуального значения каждому полю.
5. Определение связей между таблицами.
6. Обновление структуры базы данных.
7. Добавление
данных и создание других
8. Использование средств анализа в Microsoft Access.
5.1 Планирование создание базы данных
1. Определение цели создания базы данных
На первом этапе проектирования базы данных необходимо определить цель создания базы данных, основные ее функции и информацию, которую она должна содержать. То есть нужно определить основные темы таблиц базы данных и информацию, которую будут содержать поля таблиц.
База данных должна отвечать требованиям тех, кто будет непосредственно с ней работать. Для этого нужно определить темы, которые должна покрывать база данных, отчеты, которые она должна выдавать, проанализировать формы, которые в настоящий момент используются для записи данных, сравнить создаваемую базу данных с хорошо спроектированной, подобной ей базой.
2. Определение таблиц, которые должна содержать база данных
Одним из наиболее сложных этапов в процессе проектирования базы данных является разработка таблиц, так как результаты, которые должна выдавать база данных (отчеты, выходные формы и др.) не всегда дают полное представление о структуре таблицы.
При проектировании таблиц вовсе не обязательно использовать Microsoft Access. Сначала лучше разработать структуру на бумаге. При проектировке таблиц, рекомендуется руководствоваться следующими основными принципами:
Информация в таблице не должна дублироваться. Не должно быть повторений и между таблицами.
Когда определенная информация храниться только в одной таблице, то и изменять ее придется только в одном месте. Это делает работу более эффективной, а также исключает возможность несовпадения информации в разных таблицах. Например, в одной таблице должны содержаться страна и название парфюма. Каждая таблица должна содержать информацию только на одну тему.
3.
Определение необходимых в
Каждая таблица содержит информацию на отдельную тему, а каждое поле в таблице содержит отдельные сведения по теме таблицы. Например, в таблице с данными о парфюме могут содержаться поля с названием специфике, стране, объеме, брэнде. При разработке полей для каждой таблицы необходимо помнить:
Каждое поле должно быть связано с темой таблицы.
Не рекомендуется
включать в таблицу данные, которые
являются результатом
В таблице должна
присутствовать вся
Информацию следует
разбивать на наименьшие
4.
Задание индивидуального
С тем чтобы Microsoft Access мог связать данные из разных таблиц, например, данные о клиенте и его заказы, каждая таблица должна содержать поле или набор полей, которые определяют уникальность каждой записи в таблице. Такое поле или набор полей называют первичным ключом.
5.
Определение связей между
После распределения данных по таблицам и определения ключевых полей необх
одимо выбрать схему для связи данных в разных таблицах. Для этого нужно определить связи между таблицами.
Желательно изучить связи
между таблицами в уже
6.
Обновление структуры базы
После проектирования таблиц, полей и связей необходимо еще раз просмотреть структуру базы данных и выявить возможные недочеты. Желательно это сделать на данном этапе, пока таблицы не заполнены данными.
Для проверки необходимо создать несколько таблиц, определить связи между ними и ввести несколько записей в каждую таблицу, затем посмотреть, отвечает ли база данных поставленным требованиям. Рекомендуется также создать черновые выходные формы и отчеты и проверить, выдают ли они требуемую информацию. Кроме того, необходимо исключить из таблиц все возможные повторения данных.
7. Добавление данных и создание других объектов базы данных
Если структуры таблиц отвечают поставленным требованиям, то можно вводить все данные. Затем можно создавать любые запросы, формы, отчеты, макросы и модули.
8. Использование средств анализа в Microsoft Access
В Microsoft Access существует два инструмента для усовершенствования структуры баз данных. Мастер анализа таблиц исследует таблицу, в случае необходимости предлагает новую ее структуру и связи, а также переделывает ее.
Анализатор быстродействия исследует всю базу данных, дает рекомендации по ее улучшению, а также осуществляет их.
5.2 Создание базы данных « Птицефабрика»
Физическое проектирование
В данной работе определяем три структурных таблицы с различными данными. Таблицы создавались с помощью "Мастера создания таблиц" следующими командами:
1) В окне БД в разделе таблицы с помощью "Мастера".
2) В появившемся окне "Создание
таблиц" вводим данные, выбирая
готовые функции, которые
Схема данных
Далее создаем межтабличные связи в "Конструкторе таблиц". В столбце "Тип данных" выбираем "Мастер поставки", в появившемся окне выбираем нужные таблицы, а затем поля, которые нужно связать между собой.
Создание связи: Щелкаем по кнопке Схема данных.
В появившемся окне Добавление таблицы выделяем таблицы Птицефабрика, Вид, Клиентская база и нажимаем по кнопке дабавить.
В окне схема данных появляется условный вид этих таблиц. Затем закрываем окно Добавление таблицы.
Ставим мышку на имя поля Вид в таблице Вид и, не отпуская кнопку мышки, перетаскиваем ее на поле Вид в таблице Птицефабрика. Отпускаем мышку. Появится диалоговое окно Связи.
Включаем значок Обеспечение целостности данных. Это невозможно будет сделать, если типы обоих полей заданы не одинаково.
Включаем значок Обеспечение целостности данных. Это невозможно будет сделать, если типы полей обоих не заданы одинаково.
Включаем Каскадное Обновление Связанных полей. Включите Каскадное удаление Связанных полей.
Щелкаем по кнопке Создать. Появляется связь « один-ко-многим»
Такую же операцию проделываем со следующими таблицами, которые нам необходимо связать.
Разработка и создание форм.
Формы – одно из основных средств для работы с базами данных в Access - используются для ввода новых записей (строк таблиц), просмотра и редактирования уже имеющихся данных, задания параметров запросов и вывода ответов на них и др. Формы представляют собой прямоугольные окна с размещенными в них элементами управления.
Форму можно создать тремя различными способами.
При помощи авто-формы на
основе таблицы или запроса. С
помощью авто-форм можно создавать
формы, в которых выводятся все
поля и записи базовой таблицы
или запроса. Если выбранный источник
записей имеет связанные