Объекты базы данных
Все, что может иметь имя, в Access называется объектом. Основными объектами любой базы данных являются ее таблицы. Кроме таблиц база данных может содержать и другие типы объектов. Каждая система управления базами данных может реализовать свои типы объектов. В данном учебном пособии основные типы объектов будут рассмотрены на примере СУБД Microsoft Access. Access позволяет создавать и использовать объекты семи различных типов:
q Таблицы;
q Запросы;
q Формы;
q Отчеты;
q Страницы;
q Макросы;
q Модули.
Простейшая база данных имеет хотя бы одну таблицу. Других объектов простейшая база данных может не иметь. В этом случае структура базы данных тождественно равна структуре ее таблицы.
Таблицы.Это основные объекты любой базы данных. Во-первых, в таблицах хранятся все данные, имеющиеся в базе, а во-вторых, таблицы хранят и структуру базы (поля, их типы и свойства).
Каждая таблица содержит информацию в виде набора записей. Каждая запись в базе данных разделена на поля по типам или смыслу содержащейся в них информации. Примером таблицы может служить список данных о поставщиках товара с полями Название фирмы, Адрес, Телефон и т. д. Количество записей в этой таблице будет равно числу поставщиков товара. Другая таблица этой БД может содержать, например, сведения о товарах.
Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:
q Каждый элемент таблицы соответствует одному элементу данных.
q Все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип.
q Каждый столбец имеет уникальное имя.
q Одинаковые строки в таблице отсутствуют.
q Порядок следования строк и столбцов может быть произвольным.
Запросы.Эти объекты являются важнейшими инструментами любой системы управления базами данных (СУБД). Они служат для выборки определенных записей из базы и предоставления их пользователю в удобном виде. Кроме того, помощью запросов можно выполнять такие операции, как обновление таблиц и включение в них новых записей, сортировку и фильтрацию отобранных данных, преобразование данных по заданному алгоритму, создание новых таблицы, выполнение автоматического наполнения таблиц данными, импортированными из других источников, выполнение простейших вычислений в таблицах и многое другое.
Особенность запросов состоит в том, что они черпают данные из базовых таблиц и создают на их основе временную результирующую таблицу. Такая временная таблица является как бы моментальным снимком данных, выполненным на момент выполнения запроса.
Когда выполняется работа с основными таблицами базы, то физически обращения осуществляются к жесткому диску, то есть к сравнительно медленному устройству. Когда же запускается запрос, создается временная результирующая таблица, которая не имеет аналога на жестком диске, — это только образ отобранных полей и записей. Разумеется, работа с «образом» происходит гораздо быстрее и эффективнее - это еще одно основание для того, чтобы широко использовать запросы.
Из соображений безопасности, чем меньше доступа к базовым таблицам имеют конечные пользователи, тем лучше. Во-первых, снижается риск того, что неумелыми действиями они повредят данные в таблицах. Во-вторых, предоставив разным пользователям разные запросы, можно эффективно разграничить их доступ к данным в строгом соответствии с кругом персональных обязанностей.
Предположим, что в центральной городской библиотеке, есть огромная база данных Книги, содержащая подробнейшие сведения о каждой книге. Кроме формальной информации об авторе, названии и содержании книги, база может содержать и конфиденциальную информацию. Например, кто и когда брал эту книгу, у кого она сейчас находится, адреса и телефоны абонентов. Вся эта информация хранится в соответствующих связанных таблицах.
Работать с этой базой могут различные отделы библиотеки, и всем им нужны различные данные. Работнику читального зала достаточно знать, есть книга в наличии или нет, ее краткое содержание, основные цитаты. Но в тоже время, информация об абонентах библиотеки ему недоступна. Работники абонемента могут оформлять выдачу книги, помечая кому и на какой срок она выдана. При этом, если возврат книги просрочен, они могут просмотреть адрес или телефон должника и напомнить ему, про необходимость своевременного возврата. Абонент, работая в каталоге, ищет нужную книгу по имени автора, названию или цитатам. Ему доступна только эта информация, все остальное не в его поле компетенции.
Для такого разграничения прав, доступ к базовым таблицам закрывают, и создают набор запросов, для каждой группы пользователей. Для одной и той же таблицы можно создать несколько разных запросов, каждый из которых будет отбирать из таблицы только некоторую часть информации, но именно ту, которая необходима и доступна для данной группы пользователей. В результате работы такого запроса, из общей исходной базы данных формируется результирующая таблица, содержащая часть общей информации, полностью соответствующей этому запросу. Сформированная таким образом результирующая таблица предоставляется пользователю (отображается на экране монитора), а после закрытия запроса полностью исчезает, т.е. результирующие таблицы, создаются по запросу и носят временный характер.
Важным свойством запроса, можно назвать способность выполнять итоговые вычисления. Это означает, что к итоговой таблице возможно применение математического аппарата. Например, рассчитать среднее значение, сумму, найти максимальное или минимальное значение и т.п. Все это очень упрощает работу с базой данных на стадии выборки и анализа значений. Так, могут быть созданы специальные запросы, выполняющие финансовые расчеты, на основании которых будут сделаны аналитические выводы и прогнозы.
Недостатком упорядоченных табличных структур является сложность их обновления, поскольку при внесении новых записей нарушается упорядоченность — приходится переделывать всю таблицу. В системах управления базами данных и эта проблема решается благодаря запросам.
Основной принцип состоит в том, что от базовых таблиц никакой упорядоченности не требуется. Все записи в основные таблицы вносятся только в естественном порядке по мере их поступления, то есть в неупорядоченном виде. Если же пользователю надо видеть данные, отсортированные или отфильтрованные по тому или иному принципу, он просто использует соответствующий запрос. Запросы могут быть созданы на любом этапе существования базы данных, т.е. могут создаваться и удаляться по мере необходимости.
Формы. Это, прежде всего средства для ввода данных. В то же время формы можно использовать для просмотра имеющихся данных.
Смысл форм в том, чтобы предоставить пользователю средства для заполнения только тех полей, которые данному пользователю заполнять положено.
Обычно разработчик базы данных создает структуру таблиц и запросов, но заполнением таблиц информацией он не занимается. Для этого есть специальные кадры (обычно малоквалифицированные), выполняющие функции наборщиков. Наборщики вводят данные в базу, используя ранее подготовленные формы. В общем случае форма представляет собой электронный бланк, в котором есть ряд поименованных (подписанных) полей для ввода данных. Наборщик вводит данные в эти поля, и данные автоматически заносятся в таблицы базы.
Очень часто в форме размещаются специальные элементы управления (счетчики, раскрывающиеся списки, переключатели, флажки и прочие), обеспечивающие удобство работы с формой, а также автоматизацию ввода данных (рис. 3).
В принципе данные в таблицу можно вносить и без помощи каких-либо форм, но существуют, по крайней мере, четыре причины, которые делают формы незаменимым средством ввода данных в базу.
Рис. 3
. Форма Товары (отображена только одна запись, в данном случае вторая).
Во-первых, как было указано выше, это защита базы данных от действий малоквалифицированного персонала. Таблицы – это самое ценное из того, что есть в базе данных. Именно поэтому нельзя, например, малоопытному диспетчеру аэропорта предоставлять полный доступ к таблицам рейсов и воздушных коридоров (самому ценному в диспетчерской базе данных координации полетов). Или представьте, что будет, если новичок «наведет порядок» в таблице банка, хранящей расчетные счета клиентов. Более безопасно предоставить им для заполнения форму, с четкими и понятными полями.
Во-вторых, формы позволяют разграничить права доступа для различных групп пользователей. Не ко всей информации в базе можно допускать любого пользователя!!! Для нормальной работы базы и сохранения конфиденциальности информации, очень часто создают перечень групп, для каждой из которых создают свою форму, содержащую доступную только этой группе информацию и поля для ввода. Например, в банковской базе данных один сотрудник имеет право вводить только имена и адреса клиентов, другой — только номера их расчетных счетов, а третий — только денежные суммы, хранящиеся на этих счетах. Сговор между этими людьми должен быть исключен. Для ввода данных им предоставляют разные формы, хотя данные из форм могут поступать в одну таблицу.
В-третьих, это возможность оптимизировать ввод данных. Если нужно заполнить всего три поля в таблице, а она имеет их порядка 10-15, да и заполняемые поля расположены не подряд, то такая работа становится очень утомительной. Начинают появляться ошибки, устранить которые из-за особенностей БД не так просто. Вся информация моментально сохраняется в базе, и если потом обнаруживается ошибка, то отменить ранее выполненные действия уже нельзя. Нужно искать и исправлять ошибки вручную. На форме все значительно проще. Поля можно расположить в удобном для пользователя порядке, и элементы управления формой, возможно, настроить так, чтобы при добавлении записей проводилась их первичная проверка. Ошибку легче исправить еще на стадии заполнения формы, нежели после.
В-четвертых, форма позволяет упростить заполнение базы данных информацией. Это утверждение объясняется тем фактом, что информация вводится в БД, как правило, из стандартных бумажных бланков (анкет, заявлений, накладных, счетов, описей, ведомостей, справок и т. п.). Для того, чтобы упростить ввод данных, экранную форму конструируют так, чтобы она была точной копии своего бумажного аналога, с которого будет сниматься информация, т.е. повторяла бы оформление бланка. Благодаря этому во много раз уменьшается количество ошибок при вводе данных и значительно снижается утомляемость персонала.
Отчеты.Это гибкое и эффективное средство для организации просмотра и распечатки итоговой информации. В отчете можно получить результаты сложных расчетов, в том числе статистических, а также поместить в него рисунки и диаграммы. По своим свойствам и структуре отчеты во многом похожи на формы, но предназначены только для вывода данных на принтер. В связи с этим отчеты отличаются тем, что в них приняты специальные меры для группирования выводимых данных и для вывода специальных элементов оформления, характерных для печатных документов (верхний и нижний колонтитулы, номера страниц, служебная информация о времени создания отчета и т. п.).
Страницы.Это специальные объекты баз данных. Более корректно их называть страницами доступа к данным. Физически это особый объект, выполненный в коде HTML, размещаемый на Web-странице и передаваемый клиенту вместе с ней. Сам по себе этот объект не является базой данных, но содержит компоненты, через которые осуществляется связь переданной Web-страницы с базой данных, остающейся на сервере. Пользуясь этими компонентами, посетитель Web-узла может просматривать записи базы в полях страницы доступа. Таким образом, страницы доступа к данным осуществляют интерфейс между клиентом, сервером и базой данных, размещенной на сервере. Эта база данных не обязательно должна быть базой данных Microsoft Access. Страницы доступа, созданные средствами Microsoft Access, позволяют работать также с базами данных Microsoft SQL Server.
Макросы.Эти объектыпредставляют собой структурированное описание одного или нескольких действий, которые необходимо выполнить в качестве реакции на определенные события. Макросысостоят из последовательности внутренних команд СУБД и являются одним из средств автоматизации работы с базой. Например, можно создать макрос, который автоматически открывает вторую форму при выборе определенного значения в основной форме.
Модули. Это объекты, содержащие пользовательские процедуры, написанные на языке Visual Basic for Applications. Это одно из средств, с помощью которых разработчик базы может заложить в нее нестандартные функциональные возможности и таким образом удовлетворить специфические требования заказчика, повысить быстродействие системы управления, а также уровень ее защищенности.
Создание страниц, макросов и модулей в данном учебном пособии не рассматривается.
В Access для удобства пользователя объекты в окне базы данных могут быть объединены в группы по функциональному или иному признаку. Группы содержат ссылки на объекты базы данных различных типов.
В окне базы данных Access наряду со списком созданных объектов представлены ярлыки, которые предназначены для быстрого запуска конструктора или мастера создания нового объекта.
Виды СУБД
Системы управления базами данных на общем уровне можно разделить на профессиональные (промышленные) и персональные.
Профессиональные СУБД представляют собой программную основу для разработки автоматизированных систем управления крупными объектами. Профессиональные СУБД должны удовлетворять следующим условиям:
· возможность организации совместной параллельной работы большого числа пользователей;
· возможность роста системы пропорционально расширению управляемого объекта;
· переносимость на различные аппаратные и программные платформы;
· обеспечение безопасности хранимых данных и наличие развитой системы доступа к ним.
Персональные СУБДэто программное обеспечение, ориентированное на решение задач отдельного пользователя или небольшой группы пользователей. Основными отличительными особенностями персональных систем являются:
· простота эксплуатации, позволяющая пользователям, имеющим сравнительно невысокую квалификацию, создавать на основе таких систем работоспособные базы данных;
· относительно ограниченные требования к аппаратным ресурсам.
В настоящее время основными представителями профессиональных СУБД являются такие программные продукты, как Oracl, DB2, Sybase, Informix Dynamic Server, Progress, Microsoft SQL Server. Все перечисленные системы обладают следующими возможностями:
· наличие визуального интерфейса, позволяющего автоматизировать процесс создания объектов базы данных;
· наличие инструментов создания объектов базы данных в режиме диалога;
· наличие языка разработки приложений;
· встроенная поддержка универсальных языков управления данными.
К числу известных персональных СУБД относятся: MS Access, dBase, Clipper, Foxbase, FoxPro, R:BASE, Paradox, Data Ease, Clarion.
Следует заметить, что в последние годы наметилась тенденция к стиранию граней между персональными и промышленными системами, так как разработчики программного обеспечения в своем стремлении расширить потенциальный рынок для своих продуктов постоянно расширяют набор функциональных возможностей СУБД.
В настоящее время одной из самых популярных персональных СУБД является Microsoft Access. Эта популярность объясняется высокой степенью универсальности интерфейса, рассчитанного на работу пользователей с различной квалификацией, высокоразвитыми возможностями интеграции с другими программными продуктами и богатым набором визуальных средств разработки.
Access – типичная настольная СУБД, т.е. ее ресурсов достаточно для обслуживания небольшого предприятия, имеющего локальную сеть. Access имеет средства защиты, позволяющие правильно устанавливать права и ограничения для пользователей, и хорошо зарекомендовала себя при использовании в сети.
Дата добавления: 2015-12-22; просмотров: 1658;