Главная
»
Информационные системы
»
Информатика
»
3. СУБД
3. СУБД
Лекция
СУБД
База данных – это совокупность
структурированных и взаимосвязанных данных и методов, обеспечивающих добавление
выборку и отображение данных. Реляционная база данных. Практически все СУБД
позволяют добавлять новые данные в
таблицы. С этой точки зрения СУБД не отличаются
от программ электронных таблиц (Excel), которые могут эмулировать некоторые функции баз данных.
Существует три принципиальных
отличия между СУБД и программами электронных таблиц:
1. СУБД разрабатываются с целью
обеспечения эффективной
обработки больших объёмов информации, намного больших, чем те, с
которыми справляются электронные таблицы.
2. СУБД может легко связывать две
таблицы так, что для пользователя они будут представляться одной таблицей.
Реализовать такую возможность в электронных таблицах практически невозможно.
3. СУБД минимизируют общий объём
базы данных. Для этого таблицы, содержащие
повторяющиеся данные, разбиваются на несколько связанных таблиц.
Основные функции
1. Организация данных. Создание таблиц и управление
ими.
2. Связывание таблиц и обеспечение
доступа к данным. Access позволяет связывать таблицы по
совпадающим значениям полей, с целью последующего соединения нескольких таблиц
в одну.
3. Добавление и изменение данных. Эта функция требует разработки
и реализации представленных данных,
отличных от табличных (формы).
4. Представление данных. Access позволяет создавать различные отчёты на основе данных таблиц и других объектов базы данных.
5. Макросы. Использование макросов позволяет
автоматизировать повторяющиеся операции.
6. Модули. Модули представляют собой
процедуру или функцию, написанные на Access VBA (диалект Visual Basic Application). Эти процедуры можно использовать для сложных вычислений. Процедуры на Access VBA превышают возможности
стандартных макросов.
7. Защита базы данных. Эти средства позволяют организовать работу приложения в
многопользовательской среде и предотвратить несанкционированный доступ к базам
данных.
8. Средства печати. С помощью этой функции Access позволяет распечатать практически всё, что можно увидеть
в базе данных.
Пакет ODE Tools включает мастер установки,
автоматизирующий создание средств распространения и программы установки. Он так
же позволяет выполнение приложения на компьютерах, на которых не установлен Access.
ЭЛЕМЕНТЫ БАЗЫ
ДАННЫХ
1. Таблицы. В базе данных информация
хранится в виде двумерных таблиц. Можно так же импортировать и связывать
таблицы из других СУБД или систем управления электронными таблицами.
Одновременно могут быть открыты 1024 таблицы.
2. Запросы. При помощи запросов можно
произвести выборку данных по какому-нибудь критерию из разных таблиц. В запрос
можно включать до 255 полей.
3. Формы. Формы позволяют отображать
данные из таблиц и запросов в более
удобном для восприятия виде. С помощью форм можно добавлять и изменять данные,
содержащиеся в таблицах. В формы позволяют включать модули.
4. Отчёты. Отчёты предназначены для печати
данных, содержащихся в таблицах и запросах, в красиво оформленном виде. Отчёты
так же позволяют включать модули.
5. Макросы (см. выше)
6. Модули. Модули содержат VBA-код, используемый для написания процедур обработки
событий таких, как, например, нажатия кнопки в форме или отчёте, для создания
функций настройки, для автоматического выполнения операций над объектами базы данных и
программного управления операциями, т.е. добавление VBA-кода позволяет создать полную базу данных с настраиваемыми меню, панелями
инструментов и другими возможностями. Модули снимают с пользователя приложения
необходимость помнить последовательность выбора объектов базы данных для
выполнения того или иного действия и повышают эффективность работы.
База
данных может содержать до 32768 объектов.
В состав Access входит множество мастеров,
построителей и надстроек, которые позволяют упростить процесс создания объектов
базы данных.
Таблицы
1. Создание таблицы в режиме Мастера
таблиц
Процесс создания объекта базы данных при помощи
мастера делится на несколько шагов, на каждом из которых можно установить
требуемые характеристики создаваемого объекта. Мастер таблиц позволяет создать
новую таблицу на основе 33 образцов таблиц делового применения и 20 образцов
таблиц личного применения (для английской версии Access соответственно
77 и 44). (Многие таблицы базы данных Борей созданы на основе образцов Мастера
таблиц).
2. Создание таблицы в режиме
Конструктора таблиц
Если импортировать или связать данные нельзя, то чаще
всего таблицы создаются в режиме конструктора, который позволяет определить
требуемую структуру таблицы. В режиме конструктора таблиц можно увидеть
названия, типы данных, описания назначения, а также некоторые дополнительные
свойства полей таблицы. То, что появляется в верхней части окна таблицы,
открытой в режиме конструктора, называется бланком структуры таблицы или просто
бланком таблицы. В нижней части окна таблицы, открытой в режиме конструктора,
выводятся свойства полей таблицы, а также краткое описание активного свойства
таблицы.
3. Создание таблицы непосредственно
в режиме таблицы
Access дает возможность создания таблиц непосредственно в
режиме таблицы. При этом Access создает пустую таблицу на основе таблицы, используемой
по умолчанию, со структурой, имеющей 20 полей и 30 пустых записей. После этого
можно вводить данные прямо в таблицу. При ее сохранении Access
анализирует данные и выбирает тот тип для каждого поля, который больше
всего соответствует введенным данным. Создание таблиц в режиме таблицы имеет
ограниченное применение. Поля таблицы не имеют содержательных имен, так
что почти всегда нужно будет
редактировать структуру, чтобы переименовать поля.
При разработке структуры таблицы
необходимо указать, какую информацию она должна содержать. После того как
определена информация, которая должна быть включена в таблицу, ее следует
разбить по полям. Этот процесс включает в себя выбор имени поля, которое в
таблице должно быть уникальным. Необходимо включать в имя поля как можно больше
информации о его содержимом, но в то же время стараться избегать длинных имен.
Обычно при разработке баз данных в различных таблицах могли содержаться поля с
одинаковыми именами (чаще всего таблицы связывались по этим полям). Access также позволяет
использовать одинаковые имена полей в различных таблицах, но по причине того,
что Access
использует имена полей при определении условий целостности данных,
лучше не допускать повторения имен полей.
Перед началом заполнения таблицы нужно определить
связи этой таблицы с другими таблицами базы данных, определить ключевое поле и
создать индексы.
Связь между таблицами устанавливает отношения между
совпадающими значениями в ключевых полях — обычно между полями разных таблиц. В
большинстве случаев связывают ключевое поле одной таблицы с соответствующим
ему полем (часто имеющим то же имя), которое называют полем внешнего ключа
во второй таблице. Таблица, содержащая ключевое поле, называется главной,
а таблица, содержащая внешний ключ — связанной. Существует четыре вида отношений:
·
Один к одному. При
использовании отношения один к одному запись в таблице
А (главной таблице) может иметь не более одной связанной записи в
таблице В (связанной таблице) и наоборот. Этот тип связи используют
не очень часто, поскольку такие данные могут быть помещены в одну таблицу.
Связь с отношением один к одному используют для разделения очень
широких таблиц или для отделения части таблицы по соображениям защиты. В
таблицах связанных отношением один к одному ключевые поля должны
быть уникальными.
·
Один ко многим. Связь с отношением один ко многим
является наиболее часто используемым типом связи между таблицами. В такой связи
каждой записи в таблице А могут соответствовать несколько записей
в таблице В, а запись в таблице В не может иметь более
одной
·
соответствующей
ей записи в таблице А. В таблице А ключевое поле
должно быть уникальным. Связь с отношением один ко многим таблиц
А и В можно рассматривать как связь с отношением
многие к одному таблиц В и А.
·
Многие к
одному. При использовании отношения
многие к одному одной записи в таблице А может
соответствовать одна запись в таблице “B”, а запись в таблице В может иметь более одной соответствующей ей
записи в таблице А. В таблице А ключевое поле должно
быть уникальным. Связь с отношением
один ко многим таблиц А и В можно
рассматривать как связь с отношением многие к одному таблиц
В и А.
·
Многие ко
многим. При использовании отношения
многие ко многим одной записи в таблице А могут
соответствовать несколько записей в таблице В, а одной записи в
таблице В несколько записей в таблице А. В этом случае
не требуется уникальности ключевых полей таблиц А и В.
Этот вид отношения используется для связывания таблиц, имеющих только внешние
ключи.
Связанные
поля не обязательно должны иметь одинаковые имена, однако, они должны иметь
одинаковые типы данных. Кроме того, связываемые поля типа Числовой
должны иметь одинаковые значения свойства Размер поля. Исключениями
из этого правила являются поля счетчика с последовательной нумерацией, которые
могут связываться с числовыми полями размера Длинное целое. Существует возможность создать связь между
текстовыми полями разной длины, но это может вызвать сложности при создании
запросов.
Автоматическое обеспечение
ссылочной целостности данных является важной особенностью Access. Если на связь между таблицами наложены условия
ссылочной целостности, то Access
не позволяет добавлять в связанную таблицу записи, для которых нет
соответствующих записей в главной таблице, и изменять записи в главной таблице
таким образом, что после этого в связанной таблице появятся записи, не имеющие
главных записей; а также удалять записи в главной таблице, для которых имеются
подчиненные записи в связанной таблице. Условия целостности данных определяют
систему правил, используемых в Access
для поддержания связей между записями в связанных таблицах. Эти правила
делают невозможным случайное удаление или изменение связанных данных. После
наложения условий целостности данных на операции со связанными таблицами
накладываются ограничения. Невозможно ввести в поле внешнего ключа связанной
таблицы значение, не содержащееся в ключевом поле главной таблицы.
Необходимо так же определить первичный ключ. Если
таблица никогда не будет использоваться в качестве главной, то ключ для нее
определять не нужно. В главных таблицах обычно содержится информация о
реальных объектах, причем с каждым объектом ассоциируется только одна запись.
Определение ключа таблицы является простейшим способом предотвращения
появления в таблице одинаковых записей. В главной таблице связи должен быть
определен первичный ключ. Access
считает таблицы, у которых такой ключ не определен, подозрительными.
При открытии таких таблиц в режиме конструктора появляется диалоговое окно,
сообщающее о том, что ключ таблицы не определен. Ключ можно определить и в
связанных таблицах, что поможет избежать появления повторяющихся данных. Ключ
таблицы можно задать по значению нескольких полей. Access
автоматически индексирует таблицу по значению ключа, но может потребоваться
создать дополнительные индексы по значениям других полей. Индексы позволяют
ускорить поиск данных в тех полях таблицы, по которым она проиндексирована.
Каждая таблица Access может иметь до 32 индексов, 5 из которых
могут быть составными (в составной индекс может входить не более 10 полей). Создание
индексов для каждого поля таблицы и всех их комбинаций замедляет процесс
заполнения таблицы (при изменении или добавлении записи автоматически
обновляются все индексы).
Одним из основных принципов разработки реляционных баз
данных является то, что все данные, содержащиеся в поле таблицы, должны иметь
один и тот же тип. Для каждого поля таблицы необходимо задать тип данных. По
умолчанию используется тип данных «Текстовый». При задании типа данных поля
можно также указать размер, формат и другие параметры, влияющие на отображение
значения поля и точность числовых данных.
Основные типы данных в таблицах:
1. Текстовый.
Текст или числа, не требующие проведения расчётов.
2. МЕМО. Поле
этого типа предназначено для хранения небольших текстовых данных (до 64000
символов). Поле этого типа не может быть ключевым или проиндексированным.
3. Числовой.
Этот тип данных содержит множество подтипов. От выбора подтипа (размера)
зависит точность вычислений.
4. Счётчик.
Уникальные, последовательно возрастающие
числа, автоматически вводящиеся при добавлении новой записи в таблицу.
5. Логический.
Логические значения, а так же поля, которые могут содержать одно из двух
возможных значений.
6. Денежный.
Денежные значения и числовые данные, используемые в математических вычислениях.
7. Дата/Время.
Дата и время хранятся в специальном фиксированном формате.
8. Поле объекта OLE. Включает звукозапись, рисунок и прочие типы данных.
Поле этого типа не может быть ключевым или проиндексированным.
9. Гиперсвязь.
Содержит адреса Web-страниц.
Запросы
Запросы являются важным
инструментом в любых системах управления базами данных. Они используются для
выделения, обновления и добавления новых записей в таблицы. Чаще всего запросы
используются для выделения специфических групп записей, чтобы удовлетворить
определенному критерию. Кроме того, их можно использовать для получения данных
из различных таблиц, обеспечивая единое представление связанных элементов
данных. Описание и отображение запросов в Access осуществляется графическом, табличном и SQL-виде. Язык SQLприменяется для программирования
работы с реляционными базами данных.
В Access существует четыре типа запросов для различных целей
·
Запросы на выборку отображают данные из одной или нескольких таблиц в виде таблицы.
·
Перекрестные запросы собирают данные из одной или нескольких таблиц в формате, похожем на формат
электронной таблицы. Эти запросы используются для анализа данных и создания
диаграмм, основанных на суммарных значениях числовых величин из некоторого
множества записей.
·
Запросы на изменение используются
для создания новых таблиц из результатов запроса и для внесения изменений в
данные существующих таблиц. С их помощью можно добавлять или удалять записи из
таблицы и изменять записи согласно выражениям, задаваемым в режиме конструктора
запроса.
·
Запросы с параметрами — это такие запросы, свойства которых изменяются пользователем при каждом
запуске. При запуске запроса с параметром появляется диалоговое окно, в
котором нужно ввести условие отбора. Этот тип запроса не является обособленным,
т. е. параметр можно добавить к запросу любого типа.
Формы
Формы Access позволяют создавать
пользовательский интерфейс для таблиц базы данных. Хотя для выполнения тех же
самых функций можно использовать режим таблицы, формы предоставляют
преимущества для представления данных в упорядоченном и привлекательном виде.
Формы позволяют также создавать списки значений для полей, в которых для
представления множества допустимых значений используются коды. Правильно
разработанная форма ускоряет процесс ввода данных и минимизирует ошибки.
Формы создаются из набора
отдельных элементов управления: текстовые поля для ввода и редактирования
данных, кнопки, флажки, переключатели, списки,
метки полей, а также рамки объектов для отображения графики и
объектов OLE. Форма состоит из окна, в котором размещаются два типа элементов
управления: динамические (отображающие данные из таблиц), и статические
(отображающие статические данные, такие, как метки и логотипы).
Формы Access являются многофункциональными; они
позволяют выполнять задания, которые нельзя выполнить в режиме таблицы. Формы
позволяют производить проверку корректности данных, содержащихся в таблице. Access позволяет
создавать формы, включающие другие формы (форма внутри формы называется
подчиненной). Формы позволяют вычислять значения и выводить на экран результат.
Приложения
для работы с базами данных можно разделить на три основных категории:
·
Управление транзакциями. Эти формы, работают непосредственно с таблицами, при условии, что
активна только одна таблица. Если для добавления и редактирования информации в
более чем одной таблице используется единственная форма, то можно создать
запрос на обновление, включающий все нужные поля, а затем создать форму на
основе этого запроса. Главная форма
также может использовать единственную таблицу в качестве источника данных, но,
кроме того, включать подчиненные формы,
в качестве источника данных которых используются другие таблицы. Подчиненная форма, которая появляется ниже
текстовых полей главной формы, используется для просмотра и добавления данных
в таблицу, связанную с подчиненной формой.
·
Доступ к данным. Такие формы предназначены только для просмотра информации. Формы,
предназначенные только для доступа к данным, можно разрабатывать как с целью
перспективного планирования действий, так и для принятия экстренного решения.
Экстренное решение приводит к единственному действию, такому, например, как
предоставление большого кредита клиенту, или посылка представителя по продажам
для определения причины отказа клиента от товара. Приложения Access позволяют
использовать три уровня вложенности форм: главная, подчиненная и подчиненная
форма, включенная в предыдущую подчиненную форму. Формы, предназначенные только
для доступа к данным, в качестве источника данных часто используют запросы,
которые суммируют данные по временным промежуткам.
·
Администрирование баз данных. Приложения этой категории выполняют административные
функции такие, как создание баз данных
или таблиц, разграничение прав доступа пользователей к объектам баз данных,
обеспечение безопасности с помощью шифрования, периодическое уплотнение базы
данных, а также операции резервного копирования.
Приложения для
администрирования баз данных требуют наличия полного доступа ко всем объектам,
содержащимся в базе данных.
Простейший путь создания основной и подчиненной форм
- использование Мастера форм, который
позволяет создавать формы (с подчиненными или без), содержащие поля из одной
или более таблиц или запросов. Мастер форм создает базовый внешний вид формы и
добавляет текстовые поля для отображения и редактирования значений полей
таблиц. Независимо от того, являетесь ли вы профессиональным разработчиком
приложений или начинающим пользователем, использование Мастера форм заметно
упрощает и ускоряет процесс создания простых форм, которые затем можно
усовершенствовать в режиме конструктора.
Отчёты
Конечным продуктом большинства
приложений баз данных является отчет. В Access отчет представляет собой
специальный тип непрерывных форм, предназначенных для печати. Для создания
отчета, который можно распечатать и расп
Друзья! Приглашаем вас к обсуждению. Если у вас есть своё мнение, напишите нам в комментарии.