» » »

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 пустых записей. После этого можно вводить данные прямо в таблицу. При ее сохранении Ac­cess  анализирует данные и выбирает тот тип для каждого поля, который больше всего соответствует введенным данным. Создание таблиц в режиме таблицы имеет ограниченное применение. Поля таблицы не имеют содержательных имен, так что  почти всегда нужно будет редактировать структуру, чтобы переименовать поля.

При разработке структуры таблицы необходимо указать, какую информа­цию она должна содержать. После того как определена информация, которая должна быть включена в таблицу, ее следует разбить по полям. Этот процесс включает в себя выбор имени поля, которое в таблице должно быть уникальным. Необходимо включать в имя поля как можно больше информации о его содержимом, но в то же время стараться избегать длинных имен. Обычно при разработке баз данных в различных таблицах могли содержаться поля с одинаковыми именами (чаще всего таблицы связывались по этим полям). Access  также позволяет использовать одинаковые имена полей в различных таблицах, но по причине того, что Access  использует имена полей при определении условий целостно­сти данных, лучше не допускать повторения имен полей.

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

Связь между таблицами устанавливает отношения между совпадающими значениями в ключевых полях — обычно между полями разных таблиц. В большинстве случаев связывают ключевое поле одной таблицы с соответ­ствующим ему полем (часто имеющим то же имя), которое называют по­лем внешнего ключа во второй таблице. Таблица, содержащая ключевое по­ле, называется главной, а таблица, содержащая внешний ключ — связанной.       Существует четыре вида отношений:

·        Один к одному.  При использовании отношения один к одному за­пись в таблице А (главной таблице) может иметь не более одной связанной записи в таблице В (связанной таблице) и наоборот. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением один к одному используют для разделения очень широких таблиц или для отделения части таблицы по соображениям защиты. В таблицах свя­занных отношением один к одному ключевые поля должны быть уникальными.

·        Один ко многим. Связь с отношением один ко многим является наиболее часто используемым типом связи между таблицами. В такой связи каждой записи в таблице А могут соответствовать не­сколько записей в таблице В, а запись в таблице В не может иметь более одной

·        соответствующей ей записи в таблице А. В таб­лице А ключевое поле должно быть уникальным. Связь с отноше­нием один ко многим таблиц А и В можно рассматривать как связь с отношением многие к одному таблиц В и А.

·        Многие к одному. При использовании отношения многие к одному одной записи в таблице А может соответствовать одна запись в таблице “B”, а запись в таблице В  может иметь более одной соответствующей ей записи в таблице А. В таб­лице А ключевое поле должно быть уникальным.  Связь с отноше­нием один ко многим таблиц А и В можно рассматривать как связь с отношением многие к одному таблиц В и А.

·        Многие ко многим. При использовании отношения многие ко мно­гим одной записи в таблице А могут соответствовать несколько записей в таблице В, а одной записи в таблице В несколько запи­сей в таблице А. В этом случае не требуется уникальности ключе­вых полей таблиц А и В. Этот вид отношения используется для связывания таблиц, имеющих только внешние ключи.

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

Автоматическое обеспечение ссылочной целостности данных является важной особенностью Access. Если на связь между таблицами наложены условия ссылочной целостно­сти, то Access  не позволяет добавлять в связанную таблицу записи, для которых нет соответствующих записей в главной таблице, и изменять за­писи в главной таблице таким образом, что после этого в связанной таб­лице появятся записи, не имеющие главных записей; а также удалять за­писи в главной таблице, для которых имеются подчиненные записи в свя­занной таблице. Условия целостности данных определяют систему правил, используемых в Access  для поддержания связей между записями в связанных таблицах. Эти правила делают невозможным случайное удаление или изменение свя­занных данных. После наложения условий целостности данных на опера­ции со связанными таблицами накладываются ограничения. Невозможно ввести в поле внешнего ключа связанной таблицы значение, не содержа­щееся в ключевом поле главной таблицы.

Необходимо так же определить первичный ключ. Если таблица никогда не будет использоваться в качестве главной, то ключ для нее определять не нужно. В главных таблицах обычно содержится ин­формация о реальных объектах, причем с каждым объектом ассоциируется только одна запись. Определение ключа таблицы является простейшим способом предотвра­щения появления в таблице одинаковых записей. В главной таблице связи должен быть определен первичный ключ. Ac­cess  считает таблицы, у которых такой ключ не определен, подозри­тельными. При открытии таких таблиц в режиме конструктора появляется диалоговое окно, сообщающее о том, что ключ таблицы не определен. Ключ можно определить и в связанных таблицах, что поможет избежать появления повторяющихся данных. Ключ таблицы можно задать по значению нескольких полей.  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  отчет представляет собой специальный тип непрерывных форм, предназначенных для печати. Для создания отчета, который можно распечатать и расп


Друзья! Приглашаем вас к обсуждению. Если у вас есть своё мнение, напишите нам в комментарии.

Поделиться

Оплаченная реклама

Дисциплины