Основные понятия систем баз данных. Основные сведения о БД. Понятия: БД, Предметная область, Структурирование данных, Системы управления БД. Вопросы для самопроверки

Основные понятия о базах данных и СУБД

Наименование параметра Значение
Тема статьи:
Рубрика (тематическая категория) Связь

Лекция 3. Тема 4.3 Представление об организации баз данных и системах управления базами данных.

1 Основные понятия о базах данных

2 СУБД Microsoft Access

Основные понятия о базах данных и СУБД

Информационная система (ИС) - ϶ᴛᴏ система, построенная на базе компьютерной техники, предназначенная для хранения, поиска, обработки и передачи значительных объёмов информации, имеющая определœенную практическую сферу применения.

База данных - ϶ᴛᴏ ИС, которая хранится в электронном виде.

База данных (БД) – организованная совокупность данных, предназначенная для длительного хранения во внешней памяти ЭВМ, постоянного обновления и использования.

БД служат для хранения и поиска большого объёма информации. Примеры баз данных: записная книжка, словари, справочники, энциклопедии и т.д.

Классификация баз данных:

1. По характеру хранимой информации:

- Фактографические – содержат краткие сведения об описываемых объектах, представленных в строго определённом формате (картотеки, н-р: БД книжного фонда библиотеки, БД кадрового состава учреждения),

- Документальные – содержат документы (информацию) самого разного типа: текстового, графического, звукового, мультимедийного (архивы, н-р: справочники, словари, БД законодательных актов в области уголовного права и др.)

2. По способу хранения данных:

- Централизованные (хранятся на одном компьютере),

- Распределœенные (используются в локальных и глобальных компьютерных сетях).

3. По структуре организации данных:

- Реляционные (табличные),

- Нереляционные.

Термин ʼʼреляционныйʼʼ (от лат. relatio – отношение) указывает на то, что такая модель хранения данных построена на взаимоотношении составляющих её частей. Реляционная база данных, по сути, представляет собой двумерную таблицу . Каждая строка такой таблицы принято называть записью. Столбцы таблицы называются полями: каждое поле характеризуется своим именем и типом данных. Поле БД - ϶ᴛᴏ столбец таблицы, содержащий значения определœенного свойства.

Свойства реляционной модели данных:

Каждый элемент таблицы – один элемент данных;

Всœе поля таблицы являются однородными, ᴛ.ᴇ. имеют один тип;

Одинаковые записи в таблице отсутствуют;

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

Иерархической принято называть БД, в которой информация упорядочена следующим образом: один элемент считается главным, остальные – подчинёнными. В иерархической базе данных записи упорядочиваются в определœенную последовательность, как ступеньки лестницы, и поиск данных может осуществляться последовательным ʼʼспускомʼʼ со ступени на ступень. Данная модель характеризуется такими параметрами, как уровни, узлы, связи. Принцип работы модели таков, что несколько узлов более низкого уровня соединяются при помощи связи с одним узлом более высокого уровня.

Узел – информационная модель элемента͵ находящегося на данном уровне иерархии.

Свойства иерархической модели данных:

Несколько узлов низшего уровня связано только с одним узлом высшего уровня;

Иерархическое дерево имеет только одну вершину (корень), не подчинœено никакой другой вершинœе;

Каждый узел имеет своё имя (идентификатор);

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

Иерархической базой данных является Каталог папок Windows, с которым можно работать, запустив Проводник. Верхний уровень занимает папка Рабочий стол. На втором уровне находятся папки Мой компьютер, Мои документы, Сетевое окружение и Корзина, которые представляют из себяпотомков папки Рабочий стол, будучи между собой близнецами. В свою очередь, папка Мой компьютер – предок по отношению к папкам третьего уровня, папкам дисков (Диск 3,5(А:), С:, D:, E:, F:) и системным папкам (Принтеры, Панель управления и др.).

Сетевой принято называть БД, в которой к вертикальным иерархическим связям добавляются горизонтальные связи. Любой объект должна быть главным и подчинённым.

Сетевой базой данных фактически является Всемирная паутина глобальной компьютерной сети Интернет. Гиперссылки связывают между собой сотни миллионов документов в единую распределœенную сетевую базу данных.

Программное обеспечение, предназначенное для работы с базами данных, принято называть система управления базами данных (СУБД). СУБД используются для упорядоченного хранения и обработки больших объёмов информации.

Система управления базами данных (СУБД) - ϶ᴛᴏ система, обеспечивающая поиск, хранение, корректировку данных, формирование ответов на запросы. Система обеспечивает сохранность данных, их конфиденциальность, перемещение и связь с другими программными средствами.

Основные действия, которые пользователь может выполнять с помощью СУБД:

Создание структуры БД;

Заполнение БД информацией;

Изменение (редактирование) структуры и содержания БД;

Поиск информации в БД;

Сортировка данных;

Защита БД;

Проверка целостности БД.

Современные СУБД дают возможность включать в них не только текстовую и графическую информацию, но и звуковые фрагменты и даже видеоклипы.

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

Популярные СУБД - FoxPro, Access for Windows, Paradox.

Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, крайне важно различать собственно базы данных (БД) – упорядоченные наборы данных, и системы управления базами данных (СУБД) – программы, управляющие хранением и обработкой данных. К примеру, приложение Access, входящее в офисный пакет программ Microsoft Office, является СУБД, позволяющей пользователю создавать и обрабатывать табличные базы данных.

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

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

- Минимальные затраты. Низкая стоимость хранения и использования данных, минимизация затрат на внесение изменений.

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

- Простота внесения изменений. База данных может увеличиваться и изменяться без нарушения имеющихся способов использования данных.

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

- Целостность . Современные базы данных могут содержать данные, используемые многими пользователями. Очень важно, чтобы в процессе работы элементы данных и связи между ними не нарушались. Вместе с тем, аппаратные ошибки и различного рода случайные сбои не должны приводить к необратимым потерям данных. Значит, система управления данными должна содержать механизм восстановления данных.

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

Далее на примере одной из самых распространенных систем управления базами данных – Microsoft Access входит в состав популярного пакета Microsoft Office – мы познакомимся с основными типами данных, способами создания баз данных и с приемами работы с базами данных.

Основные понятия о базах данных и СУБД - понятие и виды. Классификация и особенности категории "Основные понятия о базах данных и СУБД" 2017, 2018.

Основные сведения о БД. Понятия: БД, Предметная область, Структурирование данных, Системы управления БД.

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

«Базой данных» часто упрощённо или ошибочно называют Системы Управления Базами Данных (СУБД). Нужно различать набор данных (собственно БД) и программное обеспечение, предназначенное для организации и ведения базы данных (СУБД).

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

Структурирование данных – соглашение о способе представления данных.

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

Основные функции СУБД:

· управление данными во внешней памяти (на дисках);

· управление данными в оперативной памяти с использованием дискового кэша;

· журнализация изменений, резервное копирование и восстановление базы данных после сбоев;

· поддержка языков БД (язык определения данных, язык манипулирования данными).

Обычно современная СУБД содержит следующие компоненты:

ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию,

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

подсистему поддержки времени исполнения , которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД

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

Классификация СУБД

По модели данных

По типу управляемой базы данных СУБД разделяются на:

· Сетевые

· Иерархические

· Реляционные

· Объектно-реляционные

· Объектно-ориентированные

По архитектуре организации хранения данных

· локальные СУБД (все части локальной СУБД размещаются на одном компьютере)

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

2. Классификация БД по способу доступа к данным .

По способу доступа к БД

Файл-серверные

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

На данный момент файл-серверные СУБД считаются устаревшими.

Примеры: Microsoft Access, Borland Paradox.

Клиент-серверные

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

Примеры: Firebird, Interbase, MS SQL Server, Sybase, Oracle, PostgreSQL, MySQL.

Встраиваемые

Встраиваемая СУБД - библиотека, которая позволяет унифицированным образом хранить большие объёмы данных на локальной машине. Доступ к данным может происходить через SQL либо через особые функции СУБД. Встраиваемые СУБД быстрее обычных клиент-серверных и не требуют установки сервера, поэтому востребованы в локальном ПО, которое имеет дело с большими объёмами данных (например, геоинформационные системы).

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

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

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

Правила для атрибутов сущности:

· Каждый атрибут должен иметь уникальное имя.

· Сущность может обладать любым количеством атрибутов.

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

· Для каждого экземпляра сущности должно существовать значение каждого его атрибута (правило необращения в нуль - Not Null).

· Ни один из экземпляров сущности не может обладать более чем одним значением для ее атрибута.

При построении БД:

1. определяем ЦЕЛЬ

2. определяем функции

Внешний уровень – то, что надо представить в структурированном виде;

Концептуальное проектирование – информационные объекты выстраиваются и связываются друг с другом + внешний уровень

3. преобразовываем концептуальную модель в модель БД.

Связи между объектами:

1:1, 1:ко многим, многие ко многим.

Модели данных

· Сетевые

· Иерархические

· Реляционные

· Объектно-реляционные

· Объектно-ориентированные \

Сетевые: к основным понятиям сетевой модели базы данных относятся: уровень, элемент (узел), связь.

Узел - это совокупность атрибутов данных, описывающих некоторый объект. На схеме иерархического дерева узлы представляются вершинами графа. В сетевой структуре каждый элемент может быть связан с любым другим элементом.

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

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

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

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

Иерархические базы данных могут быть представлены как дерево, состоящее из объектов различных уровней. Верхний уровень занимает один объект, второй - объекты второго уровня и т. д.

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

Реляционная: Понятие реляционный (англ. relation - отношение) связано с разработками известного английского специалиста в области систем баз данных Эдгара Кодда (Edgar Codd).

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

Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

· каждый элемент таблицы - один элемент данных

· все столбцы в таблице однородные, то есть все элементы в столбце имеют одинаковый тип (числовой, символьный и т. д.)

· каждый столбец имеет уникальное имя

· одинаковые строки в таблице отсутствуют

· порядок следования строк и столбцов может быть произвольным

Базовыми понятиями реляционных СУБД являются: 1) атрибут 2) отношения 3) кортеж

Реляционная модель БД

Реляционная модель данных - это множество взаимосвязанных двумерных таблиц. Каждая таблица содержит сведения об однородных объектах базы данных и обладает следующими свойствами:

Каждый элемент таблицы представляет собой один элемент данных;

Элементы одного столбца однородны;

Каждый столбец имеет уникальное имя;

Таблица не содержит двух и более одинаковых строк;

Порядок следования строк и столбцов произвольный.

Такие таблицы называются реляционными. Данные могут извлекаться одновременно из нескольких таблиц. Это оказывается возможным, если установить между таблицами связи. Таблицы связываются между собой для того, чтобы, в конечном счете, уменьшить объем БД. Связь каждой пары таблиц обеспечивается при наличии в них одинаковых столбцов.

Строка реляционной таблицы - называется записью, а столбцы называются полями. Запись представляет собой один экземпляр информационного объекта. Поле отражает какое-то свойство этого объекта. Каждое поле характеризуется: именем; типом; размером.

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

Над реляционными таблицами возможны следующие операции:

Объединение таблиц с одинаковой структурой. Результат – общая таблица: сначала первая, затем вторая (конкатенация).

Пересечение таблиц с одинаковой структурой. Результат – выбираются те записи, которые находятся в обеих таблицах.

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

Выборка (горизонтальное подмножество). Результат – выбираются записи, отвечающие определенным условиям.

Проекция (вертикальное подмножество). Результат – отношение, содержащее часть полей из исходных таблиц.

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

Таблицы реляционной БД должны отвечать требованиям нормализации отношений.

Логические функции

IIF(условие, значение_если_истина, значение_если_ложь). Запросы могут производить обобщенное групповое значение полей точно также как и значение одного пол. Это делает с помощью агрегатных функций. Агрегатные функции производят одиночное значение для всей группы таблицы. Имеется список этих функций: поля.

Запросы QBE на выборку.

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

Простой запрос на выборку;

Запрос с параметром;

Запрос с итогами;

Запрос перекрестный;

Запрос с вычисляемым полем.

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

Бланк простого запроса содержит шесть строк:

Имя поля;

Имя таблицы;

Сортировка;

Вывод на экран (указывает, будет ли поле присутствовать в динамическом наборе данных);

Условие отбора (содержит первое условие, ограничивающее набор данных);

Или (содержит другие условия ограничения данных).

Разработка простого запроса выполняется в несколько этапов:

Выбор таблицы;

Выбор полей (добавление полей в запрос);

Установление критериев отбора;

Задание порядка расположения записей (сортировка).

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

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

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

Создать новый запрос для таблицы (таблиц), включив в макет нужные поля;

Выполнить команду ЗАПРОС/Перекрестный;

В строке Перекрестная таблица указать, какое поле используется в качестве заголовков строк, какое – в качестве заголовков столбцов и какое - для выполнения вычислений в соответствии с выбранной групповой операцией;

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

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

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

Чтобы создать запрос с параметром, необходимо в строку Условия отбора для заданного поля ввести текст приглашения для ввода данного, заключив его в прямоугольные скобки. Можно задать параметры для нескольких полей или для одного поля определить несколько параметров для отбора, используя запись условия в несколько строк совместно с логической операцией «ИЛИ».

Запросы QBE - действия.

Выполнение запроса - действия приводит к изменению содержимого базы данных. При выполнении таких запросов следует быть осторожным, так как необдуманное применение этих запросов может привести к необратимой утрате информации в базе данных. Поэтому Access автоматически помечает в окне базы данных запросы - действия символом «!» .

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

Существует 4 типа запросов на изменение:

- запрос на добавление;

- запрос на обновление;

- запрос на удаление;

- запрос на создание таблицы.

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

Для создания запроса необходимо выполнить следующие действия:

Создать запрос на выборку и отладить его (добавить таблицы, значения полей которых будут использоваться для добавления записей);

Отменить свойство Вывод на экран для полей запроса;

Выполнить команду ЗАПРОС/Добавление – для пре­обра­зо­вания в запрос на добавление. При этом в бланке запроса появляется строка Добавление. Далее необходимо включить в бланк запроса поля, данные которых будут добавляться в принимающую таблицу. Можно ввести также условия отбора записей для добавления.

Указать имя таблицы, куда будут добавляться записи;

Выполнить команду ЗАПРОС/Запуск.

Если принимающая таблица содержит ключевое поле, то и добавляемые записи должны иметь такое же ключевое поле (по условиям целостности БД).

Технология создания других типов запросов - действий аналогична.

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

Запрос на удаление позволяет удалять записи из одной или нескольких таблиц одновременно. Запрос на удаление удаляет записи таблицы, удовлетворяющие критериям отбора, целиком, поэтому если требуется удалить значения отдельных полей записи, следует создать запрос на обновление. В процессе выполнения этого запроса Access отображает данные, которые будут удалены. Для того, чтобы иметь возможность просматривать все поля удаляемых записей, следует перетащить мышью из первой строки списка полей таблицы, записи которой требуется удалить, символ "*" в первую строку бланка запроса, в первый свободный столбец. При этом в этом столбце в строке Поле появится имя таблицы, а в строке с именем Удаление - значение Из.

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

Типы форм

В Access можно создать формы следующих типов:

Форма в столбец или полноэкранная форма;

Ленточная форма;

Табличная форма;

Форма главная / подчиненная;

Сводная таблица;

Форма - диаграмма.

Форма в столбец представляет собой совокупность определенным образом расположенных полей ввода с соответствующими им метками и элементами управления. Форма позволяет отобразить на экране полей только одной записи.

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

Табличная форма отображает данные в режиме таблицы.

Форма главная/подчиненная представляет собой совокуп­ность формы в столбец и табличной. Ее имеет смысл создавать при работе со связанными таблицами, в которых установлена связь типа «один-ко-многим».

Форма Сводная таблица выполняется мастером создания сводных таблиц Excel на основе таблиц и запросов Access (мастер сводных таблиц является объектом, внедренным в Access, чтобы использовать его в Access необходимо установить Excel). Сводная таблица представляет собой перекрестную таблицу данных, в которой итоговые данные располагаются на пересечении строк и столбцов с текущими значениями параметров.

Форма с диаграммой. В Access в форму можно вставить диаграмму, созданную Microsoft Graph. Graph является внедряемым OLE приложением и может быть запущен из Access. С внедренной диаграммой можно работать так же, как и с любым объектом OLE.

Конструирование форм

При создании новой формы появляется диалоговое окно Новая форма, в котором следует выбрать:

Способ создания формы;

Источник данных (из списка).

Access предлагает следующие способы создания формы:

1. С применением Автоформы. Автоформа позволяет созда­вать формы трех стандартных типов: в столбец, ленточную, табличную. При этом в форму вставляются все поля источника данных.

2. С помощью мастера форм. В процессе диалога с пользователем мастер создает форму одного из трех стандартных типов. При этом в форму вставляются выбранные пользователем поля из источника данных.

3. С помощью конструктора форм. Форма конструируется пользователем в окне конструктора форм.

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

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

Структура формы

Форма состоит из пяти основных разделов:

1. Заголовок формы. Содержимое области заголовка формы выводится в верхней части окна формы.

2. Верхний колонтитул. Содержимое области верхнего колонтитула выводится после заголовка в верхней части экрана на каждой странице формы (если форма многостраничная). Обычно в области верхнего колонтитула размещают шапку таблицы (заголовки столбцов).

3. Область данных. Область данных содержит поля, в которых отображаются данные.

4. Нижний колонтитул. Содержимое области нижнего колонтитула (дата, № страницы и т.д.) отображаются на каждой экранной странице в нижней части формы.

5. Примечание формы. Содержимое этой области выводится внизу последней экранной страницы формы.

Форма может содержать все разделы или только некоторые из них.

Свойства формы

Как любой объект Access, форма имеет свойства. Значения этих свойств определяют внешний вид формы. Окно "Свойства" формы можно вызвать, например, щелкнув правой клавишей мыши по черному квадрату на пересечении линеек и из контекстного меню выбрать команду СВОЙСТВА.

Окно свойств выделенного объекта содержит следующие вкладки:

Макет – свойства, задающие макет формы;

Данные – свойства, определяющие источник данных, тип данных, формат и т.д.;

События – перечень событий, связанных с объектом;

Все – перечень всех свойств.

Основные свойства формы:

Подпись (это свойство расположено на вкладке МАКЕТ) – задает название формы, которое выводится в строку заголовка в окне формы.

Режим по умолчанию – определяет режим открытия формы (простая форма, ленточная, таблица).

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

все – можно;

таблица – нельзя, возможен только просмотр в режиме таблицы;

форма – нельзя, возможен только просмотр в режиме формы.

Разрешить изменение определяет, можно ли через форму изменять данные, т.е. задает статус "Только для чтения".

Разрешить удаление определяет, может ли пользователь удалять данные через форму.

Разрешить добавление определяет, может ли пользователь добавлять записи через форму.

Ввод данных определяет режим открытия формы. Может принимать значения "Да" (форма открывается только для добавления новых записей) и "Нет" (в форму выводятся существующие записи).

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

Следующие свойства определяют, будут ли выводиться ниже перечисленные элементы в окно формы:

Полосы прокрутки;

Кнопка оконного меню;

Кнопка размеров окна;

Кнопка закрытия окна;

Тип границы окна;

Кнопка контекстной справки.

Поле номера записи определяет, будут и выводиться в окно формы кнопки перехода по записям.

Элементы управления формой

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

Связанный (присоединенный) элемент управления присоединен к полю базовой таблицы или запроса. При вводе значения в связанный элемент управления поле таблицы текущей записи автоматически обновляется. Поле таблицы является источником данных связанного элемента управления.

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

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

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

Основными элементами управления являются:

Надпись – элемент, предназначенный для отображения текста. Надпись может состоять из одной или нескольких строк. Является свободным элементом. Различают надписи свободные и присоединенные к другому элементу (подписи).

Свободная надпись используется для задания заголовков, комментариев. Создается кнопкой "Надпись" панели инструментов.

Подпись создается одновременно с созданием того элемента, к которому она присоединена. Подпись используется совместно с полями, флажками, переключателями, списками.

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

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

Добавление свободного поля в форму выполняется кнопкой "Поле" панели элементов. Добавление присоединенного поля (связанного с полем таблицы) осуществляется в режиме конструктора следующим образом:

На панели "Конструктор форм" выбирается кнопка "Список полей";

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

В форму можно вводить вычисляемые поля. Вычисляемое поле является свободным полем. Для его создания необходимо выбрать кнопку Поле на панели элементов и вставить в нужное место формы, а затем ввести выражение прямо в элемент Пол" или в качестве значения свойства Данные. В вычисляемом поле выражение должно начинаться со знака «=». Выражения можно набирать вручную или формировать построителем выражений.

Элементы управления Выключатели, Переключатели, Флажки. Принцип работы этих элементов управления совершенно одинаков, они отличаются только внешним видом.

Элементы используются для отображения данных логического типа и возвращают значение (-1) в присоединенное к ним поле таблицы, если кнопка в положении, соответствующем истине, и 0 – в противном случае.

Для отображения заданного состояния можно ввести его значение по умолчанию. если это значение не задано, то элемент будет находиться в состоянии Null, что соответствует значению Ложь.

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

Управляющие элементы Флажок и Выключатель могут использоваться не только в группе, но и индивидуально.

Флажок может быть связан с логическим полем базовой таблицы или запроса. Если флажок связан с логическим полем базовой таблицы, то состояние Установлен/Снят соответствует значениям поля.

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

Аналогичным образом может использоваться и элемент управления Выключатель.

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

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

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

Основные свойства списков:

1. Тип источника данных: таблица / запрос; список значений; список полей; функция VBA.

2. Источник данных – указывает фактический источник данных: для таблицы / запроса – имя таблицы / запроса; для списка значений – значения элементов списка через «;» (например, Пол – м;ж).

3. Присоединенный столбец – поле базовой таблицы, к которому присоединен список.

4. Число столбцов – количество столбцов в списке. Если источником данных является список значений, то элементы распределяются из списка по строкам и столбцам.

5. Ширина столбца – задается числовым значением через «;». Можно скрыть присоединенный столбец списка, если он содержит несколько столбцов. Для этого нужно установить ширину столбца равной 0. Значение не отображается при выводе списка, однако при выборе строки, значение из присоединенного столбца попадает в поле базовой таблицы.

6. Число строк – определяет максимальное число строк, отображаемое в поле со списком.

Кнопки – элемент управления, используемый для выполнения какого-либо действия. Для выполнения действия свойство кнопки Нажатие кнопки нужно связать с каким-либо макросом либо с процедурой обработки событий.

Кнопка создается мастером. Мастер позволят создать кнопки 30 разных типов и связывает их с процедурами обработки событий. Свойство Подпись определяет текст на кнопке. Свойство Рисунок определяет рисунок на кнопке.

Разрыв страниц, Набор вкладок - позволяют создавать многостраничные формы. Наиболее удобно использование элемента Набор вкладок. С его помощью создается форма, страницы которой объединяются в один элемент управления. Переключение между страницами выполняется выбором вкладки.

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

Можно изменять размеры элемента Набор вкладок, порядок следования и названия вкладок.

Элемент управления Разрыв страницы используется для указания горизонтальных разрывов между элементами управления в форме. Для перехода по страницам используются клавиши PgUp и PgDn. Вставленный в форму элемент Разрыв страницы помечается небольшой точечной линией на левой границе формы.

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

Подчиненные формы предназначены для отображения одной формы внутри другой. Первичная форма называется главной. Подчиненная форма – та, которая располагается внутри главной.

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

Создать подчиненную форму можно:

Добавив элемент Подчиненная форма в форму;

Перетащив форму из окна базы данных в другую открытую форму;

Мастером подчиненных форм.

Структура отчета

Основные разделы отчета:

Заголовок отчета – печатается в начале отчета на титульной странице, содержит название отчета;

Верхний колонтитул – печатается вверху каждой страницы; как правило, содержит заголовки столбцов;

Заголовок группы – печатается перед обработкой первой записи группы, в качестве заголовка может содержать поле, по которому выполняется группировка;

Область данных – печатается каждая запись из источника данных;

Примечание группы – печатается после обработки последней записи группы; может содержать итоговые данные по записям, входящим в группу;

Нижний колонтитул – печатается внизу каждой страницы, может содержать, например, дату печати отчета, номер страницы отчета;

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

Конструирование отчета

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

Технология создания простого отчета в столбец:

1). Находясь на вкладке ОТЧЕТЫ нажать кнопку СОЗДАТЬ.

2). В окне Новый отчет:

Выбрать инструмент Автоотчет в столбец;

Выбрать источник данных в виде таблицы или запроса;

Нажать ОК.

Технология создания многоколончатого отчета:

1). Создать простой отчет в столбец.

2). Выбрать в меню ФАЙЛ команду Параметры страницы. В диалоговом окне Параметры страницы выбрать вкладку Столбцы и задать:

В группе Параметры сетки число столбцов, которые должны выводиться на каждой странице (поле Число столбцов), ширину межстрочного интервала (поле Интервал), расстояние между столбцами (поле Столбцов);

В группе Размер столбца ширину столбца (поле Ширина) и высоту строки (поле Высота);

База данных – это организованная структура, предназначенная для хранения информации. В современных базах данных хранятся не только данные, но и информация.

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

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

В мире существует множество систем управления базами данных. Несмотря на то, что они могут по-разному работать с разными объектами и предоставляют пользователю различные функции и средства, большинство СУБД опираются на единый устоявшийся комплекс основных понятий. Это дает возможность рассмотреть одну систему и обобщить ее понятия, приемы и методы на весь класс СУБД. В качестве такого учебного объекта можно взять СУБД Microsoft Access, входящую в пакет Microsoft Office.

Состав СУБД

Язык описания данных (ЯОД) – средства описания данных в БД и связей между ними. Средствами этого языка описывается структура БД, форматы записей, пароли, защищающие данные.

Язык манипулирования данными (ЯМД) – язык для выполнения операций над данными, позволяющий менять их строение.

Для различных СУБД реализация этих уровней языков может быть различной. В одних случаях ЯОД и ЯМД требует составления пользователем программы полностью “вручную”, в других (что отражает современную тенденцию) в СУБД присутствуют средства визуальной (зримой, наглядной) разработки программ. Для этого в современных СУБД имеются редакторы экранных форм, отчетов. “Кирпичиками” (инструментами) таких редакторов являются поля различных видов (поля ввода, поля вывода, вычисляемые поля), процедуры обработки различных типов (формы ввода, таблицы, отчеты, запросы). На основании созданных пользователем объектов программы – генераторы формируют программный код на языке конкретной машины или на промежуточном языке.

Структура простейшей базы данных

Если даже в базе нет никаких данных (пустая база), то это все равно полноценная база данных. Этот факт имеет методическое значение. Хотя данных в базе и нет, но информация в ней все-таки есть – это структура базы, которая определяет методы занесения данных и хранения их в базе. Простейший «некомпьютерный» вариант базы данных – деловой ежедневник, в котором каждому календарному дню выделено по странице. Даже если в нем не записано ни строки, он не перестает быть ежедневником, поскольку имеет структуру, четко отличающую его от записных книжек, рабочих тетрадей и прочей писчебумажной продукции.

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

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

Свойства полей базы данных

Поля базы данных не просто определяют структуру базы – они еще определяют групповые свойства данных, записываемых в ячейки, принадлежащие каждому из полей. Ниже перечислены основные свойства полей таблиц баз данных на примере СУБД Microsoft Access.

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

Тип поля – определяет тип данных, которые могут содержаться в данном поле.

Размер поля – определяет предельную длину (в символах) данных, которые могут размещаться в данном поле.

Формат поля – определяет способ форматирования данных в ячейках, принадлежащих полю.

Маска ввода – определяет форму, в которой вводятся данные в поле (средство автоматизации ввода данных).

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

Значение по умолчанию – то значение, которое вводится в ячейки поля автоматически (средство автоматизации ввода данных).

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

Сообщение об ошибке – текстовое сообщение, которое выдается автоматически при попытке ввода в поле ошибочных данных.

Обязательное поле – свойство, определяющее обязательность заполнения данного поля при наполнении базы.

Пустые строки – свойство, разрешающее ввод пустых строковых данных (от свойства Обязательное поле отличается тем, что относится не ко всем типам данных, а лишь к некоторым, например к текстовым).

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

Поскольку в разных полях могут содержаться данные разного типа, то и свойства у полей могут различаться в зависимости от типа данных. Так, например, список вышеуказанных свойств полей относится в основном к полям текстового типа. Поля других типов могут иметь или не иметь эти свойства, но могут добавлять к ним и свои. Например, для данных, представляющих действительные числа, важным свойством является количество знаков после десятичной запятой. С другой стороны, для полей, используемых для хранения рисунков, звукозаписей, видео клипов и других объектов OLE, большинство вышеуказанных свойств не имеют смысла.

Типы данных

Таблицы баз данных, как правило, допускают работу с гораздо большим количеством разных типов данных. Так, например, базы данных Microsoft Access работают со следующими типами данных.

Текстовый – тип данных, используемый для хранения обычного неформатированного текста ограниченного размера (до 255 символов).

Числовой – тип данных для хранения действительных чисел.

Поле Мемо – специальный тип данных для хранения больших объемов текста (до 65 535 символов). Физически текст не хранится в поле. Он храниться в другом месте базы данных, а в поле храниться указатель на него, но для пользователя такое разделение заметно не всегда.

Дата/время – тип данных для хранения календарных дат и текущего времени.

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

Счетчик – специальный тип данных для уникальных (не повторяющихся в поле) натуральных чисел с автоматическим наращиванием. Естественное использование служит для порядковой нумерации записей.

Логический - тип для хранения логических данных (могут принимать только два значения, например Да или Нет).

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

Безопасность баз данных

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

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

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

Режимы работы с базами данных

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

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

Соответственно СУБД имеет два режима работы: проектировочный и пользовательский. Первый режим предназначен для создания или изменения структуры базы и создание ее объектов. Во втором режиме происходит использование ранее подготовленных объектов для наполнения базы или получения данных из нее.

Объекты базы данных

Таблицы

Таблицы – это основные объекты любой базы данных. Во-первых, в них хранятся все данные, имеющиеся в базе, а во-вторых, таблицы хранят и структуру базы (поля, их типы и свойства).

Запросы

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

Формы

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

Отчеты

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

Страницы

Это специальные объекты баз данных, реализованных в последней версии СУБД Microsoft Access (Access 2000). Правда, более корректно их называют страницами доступа к данным. Физически это особый объект, выполненный в коде HTML, размещаемый на Web-странице и передаваемый клиенту вместе с ней. Сам по себе этот объект не является базой данных, но содержит компоненты, через которые осуществляется связь переданной Web-страницы с базой данных, остающейся на сервере. Пользуясь этими компонентами, посетитель Web-узла может просматривать записи базы в полях страницы доступа. Таким образом, страницы доступа к данным осуществляют интерфейс между клиентом, сервером и базой данных, размещенной на сервере. Эта база данных не обязательно должна быть базой данных Microsoft Access. Страницы доступа, созданные средствами Microsoft Access, посволяют работать также с базами данных Microsoft SQL Server.

Макросы и модули

Эти категории объектов предназначены как для автоматизации повторяющихся операций при работе с СУБД, так и для создания новых функций путем программирования. В СУБД Microsoft Access макросы состоят из последовательности внутренних команд СУБД и являются одним из средств автоматизации работы с базой. Модули создаются средствами внешнего языка програмирования, в данном случае, языка Visual Basic for Applications. Это одно из средств, с помощью которых разработчик базы может заложить в нее нестандартные функциональные возможности, удовлетворить специфические требования заказчика, повысить быстродействие системы управления, а также уровень ее защищенности.

Как отмечалось, БД в простейшем случае представляется в виде системы двумерных таблиц. Таблицы могут быть представлены в ПК либо в виде отдельных файлов, либо размещаться в одном файле.

Файл – информация, хранимая на электронном носителе после завершения отдельных заданий и рассматриваемая в процессе обработки как единое целое. Файл имеет имя и требует некоторого объема памяти носителя, в качестве которого может выступать дискета, винчестер, компакт-диск (CD).

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

Домен – совокупность значений одного поля.

Универсум – совокупность значений всех полей.

Запись – строка документа. Следует отметить, что это понятие неоднозначно. В реляционной модели данных запись – строка таблицы, в сетевой модели данных – элемент структуры, аналогичный примерно таблице в реляционной модели данных.

Запись логическая – поименованная совокупность данных, рассматриваемая пользователем как одно целое.

Запись физическая (совокупность данных записываемых/считываемых одним блоком) характеризует расположение данных в физической памяти ПК.

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

Выделенный ключ – ключ, явно перечисленный вместе с реляционной схемой. В противном случае говорят о неявном ключе. Вводят и такие понятия как возможный ключ (ключ-кандидат), если любой из нескольких наборов полей может быть принят за составной ключ. Один из выделенных ключей называют первичным. При работе с несколькими связанными таблицами говорят о родительском ключе главной таблицы и внешнем ключе подчиненной таблицы. Иногда ключ называют идентификатором – атрибутом, значения которого однозначно определяют экземпляры объекта предметной области.

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

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

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

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

Архитектура – разновидность (обобщение) структуры, в которой какой-либо элемент может быть заменен на другой элемент, характеристики входов и выходов которого идентичны первому элементу. Понятие "принцип открытой архитектуры" используется при построении компьютера. Этот принцип означает, что вместо принтера одной марки (например, Epson) к компьютеру может быть подключен принтер другого типа (например, Hewlett Packard).

Безопасность – защита от преднамеренного или непреднамеренного нарушения секретности, искажения или разрушения.

Блокировка – неделимая операция, которая позволяет только одному процессу иметь доступ к совместно используемому ресурсу.

Вид (View) – таблица, вычисленная с помощью навигационной операции на основе исходной таблицы (таблиц). Вид может использоваться почти по тем же правилам, что и исходная таблица.

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

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

Время доступа – промежуток времени между выдачей команды записи (считывания) и фактическим получением данных.

Время отклика – промежуток времени от момента запроса к БД до фактического получения данных.

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

Доступ – операция поиска, чтения данных или записи их.

Задание (работа) – программа или совокупность программ и преобразуемые этими программами данные.

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

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

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

Кортеж – совокупность полей или запись (строка).

КОДАСИЛ (CODASIL) – набор стандартов для сетевых баз данных.

Логический – определение, относящееся к представлению или описанию данных, не зависящему от запоминающей среды или вычислительной системы, однако "привязанное" к выбранной СУБД.

Машина баз данных (МБД) – вспомогательный периферийный процессор, выполняющий функции СУБД.

Метаданные – данные о данных, описание информационных ресурсов, их характеристик, местонахождения, способов использования и т. д. Например, перечень таблиц с характеристиками каждой из них (имя, объем памяти и другие параметры).

Многозначная зависимость (MV-зависимость, зависимость 1:М) – для подсхем X, Y, Z, принадлежащих схеме R, Z = R – (XY) и кортежей t2(X) = t1(Х) и t3(Y) = t1(Y) справедливо t3(Z) = t1(Z) и t3(Z) = t2(Z).

Модель данных – средство абстракции, позволяющее видеть информационное содержание (обобщенную структуру), а не их конкретные значения. Выделяют, как отмечалось, иерархическую, сетевую, реляционную, объектно-ориентированную, объектно-реляционную и многомерную модели данных.

Навигация – операция, результат которой представлен единым объектом, полученным при прохождении пути по логической структуре БД. Иными словами, операция получения новой таблицы из полей связанных таблиц.

Независимость данных – возможность изменения логической и физической структуры БД без изменения представлений пользователя.

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

Объектно-ориентированное программирование – методология программирования, основанная на представлении программ в виде связанной совокупности объектов, каждый из которых является экземпляром определенного класса, а классы образуют иерархию по наследованию.

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

Отношение r на множествах (доменах) S1, ..., Sn – подмножество декартова произведения S,& ... &Sn. Понятие "отношение" является основным в реляционных БД. Пусть имеется таблица с двумя полями S1 и S2 по два значения в каждом (S1 = {al, а2} и S2 = {bl, b2}, т. е. в каждом домене по два значения). "Полная" таблица имеет четыре возможных записи (al, bl; al, b2; а2, М; а2, b2), которые и образуют декартово произведение. Отношением является и часть этой таблицы (например, al, bl; а2, b1). Отношение может быть и составным: r – (r1, ..., rn), составленным, например, из нескольких связанных таблиц.

Подсхема – описание логического представления пользователя данной группы. Иными словами, это схема отдельного пользователя БД, если их несколько. Из подсхем может быть составлена схема БД (для всех пользователей). Нетрудно видеть, что при наличии одного пользователя подсхема является схемой.

Программа – полное и точное описание алгоритма на некотором формальном языке программирования.

Процедура – некоторая подпрограмма.

Распределенная база данных (РЕД) – единая БД, представленная в виде отдельных (возможно, избыточных и перекрывающихся) разделов на разных вычислительных средствах.

Связь – ассоциация между экземплярами примитивных или агрегированных объектов (записей) данных.

Семантика – часть языка, касающаяся указания смысла и действия текста, составленного в соответствии с синтаксическими правилами. Действия текста относится к операторам на некотором языке программирования.

Синтаксис – правила, определяющие разрешенные языковые конструкции, а также последовательности расположения символов в программе.

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

Система управления базой данных (СУБД) – совокупность программных средств, обеспечивающих управление БД на всех уровнях.

Системный журнал – журнал регистрации всех изменений БД.

Словарь данных – набор обобщенных описаний данных БД, обеспечивает логически централизованное хранение метаданных.

Спецификация – операция, результатом которой является новая структура, построенная на основе структур базы данных.

Структура – совокупность элементов и нх связей.

Сущность – примитивный объект данных, отображающий элемент предметной области (человек, место, вещь и т. д.).

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

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

Функциональная зависимость (F-зависимость, зависимость 1:1): схема Y функционально зависит от X, если для кортежей t,(X) = t2(X), справедливо t1(Y) = t2(Y), причем схемы X и Y могут принадлежать схеме R.

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

Хранилище данных – предметно-ориентированный, интегрированный, привязанный ко времени и неизменный набор данных, предназначенный для поддержки принятия решений.

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

Элемент данных – наименьшая единица данных, имеющая смысл при описании информации; наименьшая единица поименованных данных.

Экземпляр – отдельный экземпляр объекта, записи, элемента данных.

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

Язык манипулирования данными (ЯМД) командный язык, обеспечивающий доступ к содержимому БД и его обработку. Обработка предполагает вставку, удаление и изменение данных (операции обновления).

Язык описания данных (ЯОД) – предназначен для описания данных на концептуальном, логическом и физическом уровнях на основе соответствующих схем. Речь идет о командах по формированию структуры (шапки) таблиц и связей между ними. Эти операции могут быть обеспечены визуальным языком программирования QBE или директивным языком программирования SQL.

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

Следует отметить, что три группы операций с БД (описание, манипулирование, запрос) совмещены в языке SQL, а в некоторых СУБД – и в языке QBE.

Исходным элементом базы данных является таблица, структурные составляющие которой – поле и запись. Можно выделить две разновидности структуры таблиц: линейную и нелинейную. В линейной структуре поля располагаются последовательно друг за другом в произвольном порядке (табл. 1.11). В силу произвольности порядка для данной, конкретной реализации следует закрепить определенный вариант, называемый схемой пользователя.

Таблица 1.11

Таблица данных о кафедре

В нелинейной структуре выделяется понятие "агрегат", являющийся как бы таблицей в таблице (табл. 1.12). Агрегат может быть двух видов: вектор и повторяющиеся поля. Возможности реализации структур таблиц зависят от выбранной модели данных (МД). Реляционная и иерархическая модели данных реализуют только линейную структуру, тогда как сетевая и объектно-ориентированная модели позволяют использовать и нелинейную структуру. Особенности конкретной реализации определяются классами БД и СУБД.

Таблица 1.12

Таблица данных о студентах

Развития вычислительной техники осуществлялось по двум основным направлениям:

· применение вычислительной техники для выполнения численных расчетов;

· использование средств вычислительной техники в информационных системах.

Информационная система – это совокупность программно-аппаратных средств, способов и людей, которые обеспечивают сбор, хранение, обработку и выдачу информации для решения поставленных задач. На ранних стадиях использования информационных систем применялась файловая модель обработки. В дальнейшем в информационных системах стали применяться базы данных. Базы данных являются современной формой организации, хранения и доступа к информации. Примерами крупных информационных систем являются банковские системы, системы заказов железнодорожных билетов и т.д.

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

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

Существуют 4 основные модели данных – списки (плоские таблицы), реляционные базы данных, иерархические и сетевые структуры.

В течение многих лет преимущественно использовались плоские таблицы (плоские БД) типа списков в Excel. В настоящее время наибольшее распространение при разработке БД получили реляционные модели данных. Реляционная модель данных является совокупностью простейших двумерных таблиц – отношений (англ. relation),т.е. простейшая двумерная таблица определяется как отношение (множество однотипных записей объединенных одной темой) .

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

Основные понятия реляционных БД: нормализация, связи и ключи

1. Принципы нормализации :

· В каждой таблице БД не должно быть повторяющихся полей;

· В каждой таблице должен быть уникальный идентификатор (первичный ключ);

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


· Изменение значений в полях таблицы не должно влиять на информацию в других полях (кроме изменений в полях ключа).

2. Виды логической связи .

Связь устанавливается между двумя общими полями (столбцами) двух таблиц. Существуют связи с отношением «один-к-одному», «один-ко-многим» и «многие-ко-многим».

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

· один – к - одному, каждой записи из одной таблицы соответствует одна запись в другой таблице;

· один – ко - многим, каждой записи из одной таблицы соответствует несколько записей другой таблице;

· многие – к - одному, множеству записей из одной таблице соответствует одна запись в другой таблице;

· многие – ко - многим, множеству записей из одной таблицы соответствует несколько записей в другой таблице.

Тип отношения в создаваемой связи зависит от способа определения связываемых полей:

· Отношение «один-ко-многим» создается в том случае, когда только одно из полей является полем первичного ключа или уникального индекса.

· Отношение «один-к-одному» создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы.

· Отношение «многие-ко-многим» фактически является двумя отношениями «один-ко-многим» с третьей таблицей, первичный ключ которой состоит из полей внешнего ключа двух других таблиц

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

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

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

Существует три типа первичных ключей : ключевые поля счетчика (счетчик), простой ключ и составной ключ.

Поле счетчика (Тип данных «Счетчик»). Тип данных поля в базе данных, в котором для каждой добавляемой в таблицу записи в поле автоматически заносится уникальное числовое значение.

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

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

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

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

Программы, которые предназначены для структурирования информации, размещения ее в таблицах и манипулирования данными называются системами управления базами данных (СУБД ). Другими словами СУБД предназначены как для создания и ведения базы данных, так и для доступа к данным. В настоящее время насчитывается более 50 типов СУБД для персональных компьютеров. К наиболее распространенным типам СУБД относятся: MS SQL Server, Oracle, Informix, Sybase, DB2, MS Access и т. д.