Обзор систем управления базами данных (субд) для систем контроля и управления доступом (скуд). Технология работы с субд access

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

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

Средствами Access можно проводить следующие операции.

1. Проектирование базовых объектов ИС - двумерных таб­лиц, с разными типами данных, включая поля объектов OLE. Прежде чем заполнять данными таблицу, надо создать ее макет.

2. Установление связей между таблицами, с поддержкой це­лостности данных, каскадного обновления полей и каскад­ного удаления записей.

3. Ввод, хранение, просмотр, сортировка, модификация и вы­борка данных из таблиц с использованием различных средств контроля информации, индексирования таблиц и аппарата алгебры логики (для фильтрации данных).

4. Создание, модификация и использование производных объектов ИС (форм, запросов и отчетов).

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

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

Запись данных состоит из нескольких полей. При этом действует следующее правило: запись данных представляет собой группу взаимосвязанных полей, рассматриваемых как единое целое. Например, запись данных может содержать информацию о конкретном клиенте или продукте. Каждая запись данных в таблице содержит одинаковое число полей. Каждое поле содержит один и тот же тип информации. Например, в каждой записи данных некоторой таблицы поле ИМЯ КЛИЕНТА будет предназначено для имени клиента, т.е. будет содержать однотипную информацию.

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

Таблица 2 – Типы данных

Тип данных Применение Размер
Текстовый (Text) Текст или комбинация текста и чисел, например, адрес, а также числа, не требующие вычислений, например, номера телефонов. номенклатурные номера или почтовый индекс. До 255 символов. Хранятся только введенные в поле символы, позиции, не использованные в текстовом поле, не хранятся. Для управления максимальным числом вводимых символов следует определить свойство Размер поля (FieldSize).
Поле MEMO Длинный текст или числа, например, комментарии или описание. Поля MEMO не могут быть индексированы или отсортированы. Для хранения форматированного текста или длинных документов, вместо поля MEMO. следует создать поле объекта OLE. До 65535 символов.
Числовой (Number) Числовые данные, используемые для математических вычислений, за исключением вычислений, включающих денежные операции (для которых используется денежный тип). Тип и размер значений, которые могут находиться в числовом поле. Можно изменить в свойстве Размер поля (FieldSize). Например, в поле. занимающее на диске 1 байт, допускается ввод только целых чисел (без десятичных знаков) от 0 до 255. 1, 2, 4 или 8 байт. 16 байттолько для кодов репликации.
Дата/время (Date/Time) Даты и время. Хранение значений дат и времени в поле типа Дата/Время обеспечивает правильную сортировку. Все изменения, внесенные в форматы дат и времени в окне Язык и стандарты Панели управления Windows, будут автоматически отражены в полях типа Дата/Время. 8 байт.
Денежный (Currency) Значения валют. Денежный тип используется для предотвращения округлений во время вычислений. Предполагает до 15 символов в целой части числа и 4 - в дробной. 8 байт.
Счетчик (AutoNumber) Автоматическая вставка последовательных (отличающихся на 1) или случайных чисел при добавлении записи. Для создания возрастающего счетчика следует оставить все настройки свойства в нижней части окна прежними (по умолчанию), в свойстве Размер поля (FieldSize) задано значение Длинное целое, а в свойстве Новые значения (New Values) - Последовательные (Increment). Для создания счетчика случайных чисел для свойства Новые значения нужно установить значение Случайные (Random). 4 байта. Для кодов репликации - 16 байт.
Логический (Yes/No) Поля. содержащие только одно или два значения, таких как Да/Нет, Истина/Ложь. Вкл/Выкл. 1 бит.
Объекты OLE (OLE Object) Объекты (например, документы Microsoft Word. электронные таблицы Microsoft Excel, рисунки, звуки и другие данные), созданные в других программах, использующих протокол OLE. Объекты могут быть связанными или внедренными в таблицу Microsoft Access. Для отображения объекта OLE в форме или отчете необходимо использовать элемент управления Присоединенная рамка объекта. До 1 гигабайта
Мастер подстановок (Lookup Wizard) Создается поле. позволяющее выбрать значение из другой таблицы или из списка значений, используя поле со списком. При выборе данного параметра в списке типов данных для их определения загружается Мастер. Размер такой же, как и раз­мер ключевого поля, кото­рое также является Масте­ром подстановок, обычно 4 байта.
Гиперссылка (Hyperlink) Поле, в котором хранятся гиперссылки. Гиперссылка может быть либо типа UNC (Universal Naming Convention - стандартный формат пути файла с включением сетевого сервера), либо URL (Uniform Resource Locator - адрес объекта в Internet или внутренней сети с включением типа протокола доступа). Гиперссылка может состоять из четырех частей: текст, выводимый в поле или в элементе управления; путь к файлу (в формате пути UNC) или странице (URL); дополнительный адрес - расположение внутри файла или страницы; подсказка - текст, отображаемый в виде всплывающей подсказки. Длина каждой из частей гиперссылки не более 2048 символов.
Примечание: Числовые, денежные и логические типы данных, а также Дата/Время, обеспечивают стандартные форматы отображения. Для выбора форматов для каждого типа данных следует определить свойство Формат. Для всех данных, кроме объектов OLE, можно также создать пользовательский формат отображения. Подробнее см. ниже в разделе "Свойство Формат поля".

Кроме таблиц СУБД Access работает со следующими объектами:

Формами;

Запросами;

Отчетами;

Макросами;

Модулями.

Таблица - это базовый объект MS Access. Все остальные объекты являются производными и создаются только на базе ранее подготовленных таблиц.

Форма не является самостоятельным объектом Access. Она просто помогает вводить, просматривать и модифициро­вать информацию в таблице или запросе. Запросы и отчеты выполняют самостоятельные функции: выбирают, группируют, представляют, печатают информацию.

Каждый объект MS Access имеет имя. Длина имени любого объекта MS Access (таблицы, формы и т. д.) - не более 64 произвольных символов (за исключением точки и некоторых слу­жебных знаков). В имя могут входить пробелы и русские буквы. С каждым объектом работают в отдельном окне, причем предусмотрено два режима работы:

1) режим конструктора, - когда создается или изменяется макет, структура объекта (например, структура таблицы);

2) оперативный режим, - когда в окне задачи ИС просматривается, изменяется, выбирается информа­ция.

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

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

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

Отчет - это фактически тот же запрос, но оформленный так, чтобы его можно было напечатать на бумаге и представить начальству (с красивыми заголовками, промежуточными итогами и т. п.).

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

Создание производных объектов - запросов, форм и отчетов - ведется примерно по одной и той же схеме. Вот некоторые особенности:

Для производных объектов необходимо указать имя (имена) таблицы (запроса), на базе которой создается этот объект;

При использовании Мастера на панели инструментов необходимо установить флажок «Панель элементов», и на экране появится набор пиктограмм (рис. 14.5), с помощью которого вы проектируете форму (отчет, запрос).

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

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

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

Работа с Мастерами проста, надежна и эффективна, и позволяет использовать все богатство возможностей Microsoft Access.

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

1 Запуск Microsoft Access:

При запуске Access на экране появляется окно (рисунок 1.1), в котором можно:

Либо создать новую базу данных, т. е. файл с расширением.MDB;

Либо открыть существующую БД, т. е. файл с расширением.MDB.

Создание БД. После выбора команды [Файл-Создать...], на экране появляется стандартный файлер (рисунок 1.2), в котором надо указать имя и адрес создаваемого файла базы данных. Например, для информационной системы с именем Телефонный справочник.MDB.

Создав файл, Access раскрывает пустое окно базы данных, и в этом окне проводятся все операции - создание и манипулирование объектами БД. В этом окне находится 7 объектов (Таблицы, Запросы, Формы, Отчёт, Страницы, Макросы, Модули) и группы.

Открытие БД . После выбора команды [Файл-Открыть...], на экране появляется стандартный файлер, в котором необходимо указать имя и адрес существующего файла базы данных. Затем в окне приложения раскрывается окно БД, обеспечивающее доступ к уже созданным объектам базы данных и возможность создавать новые объекты.

MS Access - многооконное приложение, однако в любой момент может быть открыта только одна база данных. Именно ее окно является главным окном документа в приложении Access (рисунок 1.3), и его закрытие означает закрытие соответствующего файла.MDB. Однако это окно порождает множество дочерних окон (таблицы, запроса, формы и т. д.). Сохранить объект (например, макет таблицы), окно которого находится на экране, и присвоить ему имя можно точно так же, как это делается с файлами: командой [Файл-Сохранить] или [Файл-Сохранить как...].

Работа с таблицами

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

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

Если выбрана вкладка Таблица, в окне этой вкладки отображается список существующих таблиц данной БД.

Чтобы открыть существующую таблицу, надо выделить ее имя в этом списке и нажать кнопку «Открыть».

На рисунке 1.3 показано окно приложения MS Access вместе с окном базы данных «Межгород». Пока в этом файле нет ни одного объекта.

Для включения в БД новой таблицы, надо нажать кнопку «Создать».

Чтобы исправить макет существующей таблицы, надо выделить ее имя в списке и нажать кнопку «Конструктор».

Такие же операции выполняются со всеми другими объектами MS Access.

Любой объект (таблицу, запрос, форму, отчет) можно создать либо вручную (режим конструктора), либо с помощью Мастера.

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

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

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

- формы и отчеты создавать с помощью Мастера.

Рассмотрим последовательность шагов при включении в базу данных новой таблицы. Сначала нужно определить предметную область, для которой будет создаваться база данных. В качестве предметной области определим междугородние телефонные разговоры, расчет суммы оплаты за междугородние телефонные разговоры для отдельных абонентов. В первую очередь определяются поля, которые будет содержать таблица «Абоненты» базы данных «Межгород». Необходимые поля показаны в таблице 3, причем поле «Номер абонента» будет выбран в качестве ключевого. Ключ представляет собой поле в соответствующей таблице. Он однозначно характеризует каждую запись, содержащуюся внутри таблицы.

Таблица 3 – Поля таблицы «Абонент»

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

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

Для этого нужно открыть окно конструктора таблиц (рис. 2.1), выбрав вкладку Таблица и строку «Создание таблицы в режиме конструктора» или нажать кнопку «Создать».

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

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

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

Бланк свойств (нижняя часть окна) представляет собой перечень свойств (слева название свойства, справа - значение этого свойства) с окном подсказки по каждому свойству.

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

Таблица 4 – Свойства полей, отображаемые в бланке свойств конструктора таблиц

Свойство Назначение
Размер поля Задает максимальное число символов для ввода в данное поле
Новые значения Определяет способ изменения значений счетчика при добавлении новых записей
Формат поля Задает формат вывода значений данного поля
Число десятичных знаков Определяет число десятичных знаков, используемых при отображении чисел
Маска ввода Задает маску ввода, облегчающую ввод данных в поле
Подпись Определяет текст, который выводится в качестве подписи поля
Значение по умолчанию Позволяет указать значение, автоматически вводящееся в поле при создании новой записи
Условие на значение Определяет требования к данных, вводимым в поле
Сообщение об ошибке Позволяет указать текст сообщения, выводящегося на экран, если введенные данные нарушают условие, определенное в свойстве
Обязательное поле Указывает, требует ли поле обязательного ввода значения
Пустые строки Определяет, допускается ли ввод в данное поле пустых строк
Индексированное поле Определяет индекс, создаваемый по одному полю
Сжатие Юникод Устанавливает сжатие полей, для хранения данных в которых используется кодировка Юникод (поля MEMO, гиперссылки и текстовые поля)

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

Для текстового и числового поля надо указать размер поля, причем для текста - это допустимая длина значения (например, 20 или 40 символов), а для числа - формат представления в машине (байт, целое – два байта, длинное целое и т. д.). Максимальная длина текстового поля 255 символов. Если необходимо ввести текст, длина которого превышает это значение, можно воспользоваться типом данных Memо.

Для поля «Дата/время» обязательно надо указать формат, чтобы система знала, как обрабатывать вводимые данные. Например, если выбрать «Краткий формат даты», система будет ожидать от вас ввода именно даты (в русской версии - ДД.ММ.ГГГГ), а если выбрать «Краткий формат времени», в этом поле придется набирать ЧЧ:ММ (часы и минуты).

В строке свойств маска ввода существует возможность создать маску, в соответствии с которой будут вводиться данные. Например, для поля номер телефон можно задать маску 00-00-00 , в соответствии с которой и будут вводиться номера телефонов.

В качестве значения свойства «Условие на значение» можно указать правило верификации, т. е. логическое выражение, которое должно принимать значение TRUE («Истина») при вводе данных в это поле. Например, если для поля дата разговора записать:

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

В следующем свойстве можно записать произвольное сообщение об ошибке, которое будет выдано системой, например: «Это значение даты недопустимо» или «дата неверна». В дальнейшем при неправильном вводе даты на экран поступит это сообщение.

В свойстве «Обязательное поле» можно указать «Да» (пустые значения не допускаются) или «Нет» (пустые значения допускаются).

Для первичного ключа таблицы (поле «Номер Абонента») в свойстве «Индексированное поле» нужно выбрать: «Да, совпадения не допускаются», а затем щелкнуть в панели инструментов на кнопке «Определить ключ» (с изображением ключа). Тем самым определяется ключевое поле, или простой индекс.

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

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

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

Раздел 2. Организация баз данных

Лекция 13. СУБД MS Access . Создание таблиц и определение связей

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

Начиная с пакета MS Office 2000, в составе MS Access появились новые функциональные возможности:

§ Поддержка клиент-серверных приложений. В качестве серверов БД могут быть использованы Microsoft SQL Server 6.5 или 7.0, а также процессор обработки данных MSDE (Microsoft Database Engine ).

§ Экспорт объектов БД в формат HTML , создание статических и динамических Web -страниц для доступа к данным.

§ Возможность использования электронной почты для отправки данных и т.д.

Взаимодействие со средой MS Access осуществляется через главное меню и панели инструментов их использование и настройка не отличается от других приложений пакета MS Office . СУБД MS Access создает всю систему в одном фале с расширением *. mdb , с этим связаны недостатки и преимущества этой СУБД.

Основы работы в СУБД MS Access

После создания или открытия БД через окно диалога « Microsoft Access » откроется рабочее окно диалога «База данных» (рисунок 13.1).

Рисунок 13.1 - Диалоговое окно «База данных»

Рабочее окно «База данных» позволяет получить доступ к основным объектам MS Access , таким как: таблицы, запросы, формы, отчеты, страницы, макросы, модули. Определим основные объекты, используемым в СУБД Access :

§ Таблица – основной объект реляционной базы данных, необходимый для хранения данных.

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

§ Форма – формат отображения в виде окна ОС Windows. Весь пользовательский интерфейс базируется на формах.

§ Отчет – форматированное представление данных, выводимое на экран, принтер или файл.

§ Страница – формат отображения в виде формы служащий для доступа к Web-страницам. Новый объект, добавленный в MS Access 2000.

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

§ Модуль – программа на языке Access Basic . Использование модулей позволяет более полно реализовать возможности MS Access .

Практически каждый объект MS Access , кроме макросов и модулей, имеет несколько вариантов создания, традиционными можно назвать конструктор и мастер:

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

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

Создание таблиц

СУБД MS Access поддерживает ряд базовых типов данных: текстовый, числовой, денежный, счетчик, даты/времени, логический, поле МЕМО, поле объекта OLE , гиперссылка. Среди перечисленных типов расширенными можно считать последние два: поле объекта OLE и гиперссылка, последний не нуждается в пояснениях. Поле объекта OLE позволяет импортировать в таблицы БД объекты, поддерживающие технологию OLE , например изображения, документы MS Word и т.д.

На имена таблиц и полей в СУБД MS Access накладываются следующие ограничения:

§ Имя поля не может содержать более 64 символов.

§ В именах полей и таблиц недопустимо использование управляющих символов с кодами 0 – 31 и символов (. ! ‘ ).

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

СУБД MS Access предлагает несколько способов создания таблиц:

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

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

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

§ Импорт таблиц – позволяет импортировать таблицы из внешних файлов, например из существующих БД MS Access , таблиц MS Excel и т.д. В результате в текущей БД будет создана таблица, полученная из внешнего источника.

§ Связь с таблицами – позволяет осуществить связь с таблицами расположенными во внешних файлах.

Основным средством создания таблиц в MS Access является конструктор таблиц. Рассмотрим структуру конструктора таблиц (рисунок 13.2) и особенности создания таблиц в этом режиме.

Рисунок 13.2 - Окно конструктора таблиц

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

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

Можно выделить следующие свойства полей расположенные на вкладке «Общие»:

· Размер поля – определяет максимальное число знаков (применяется для полей типа: текстовые, числовые, счетчик);

· Новые значения – определяет способ изменения значений счетчика (только для типа счетчик);

· Формат поля – определяет формат вывода значений поля (применяется для всех полей кроме полей объектов OLE );

· Число десятичных знаков – определяет число десятичных знаков при отображении чисел (применяется для типов: числовой, денежный);

· Маска ввода – позволяет задать маску ввода, для упрощения ввода данных (применяется для полей типа: текстовые, дата/время, числовые, денежные);

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

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

· Условие на значение – определяет требования к данным, вводимым в поле;

· Сообщение об ошибке – содержит сообщение, которое будет выводиться в случае нарушения условия на вводимое значение (см. выше);

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

· Пустые строки – определяет, допускается ли ввод пустых строк в поле (только для текстовых полей);

· Индексное поле – определяет индекс создаваемый по одному полю;

· Сжатие ЮНИКОД – включает сжатие полей, при использовании кодировки Unicode (для полей МЕМО, гиперссылок и текстовых полей).

Замечание. Определение таких свойств как «Маска ввода», «Значение по умолчанию», «Условие на значение», «Сообщение об ошибке» позволят повысить удобство и скорость работы пользователей, а также снизить количество возможных ошибок.

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

Назначение первичного ключа осуществляется командой Правка - Ключевое поле, командой контекстного меню Ключевое поле или кнопкой панели инструментов . Сложный первичный ключ можно создать аналогично, предварительно выделив поля входящие в первичный ключ мышкой, с удержанием клавиши Shift или Ctrl .

Как и во многих СУБД, ключи определяются индексами (в том числе первичный ключ), поэтому для назначения сложных ключей или их специальной настройки можно использовать окно диалога «Индексы» (рисунок 13.3).

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

Рисунок 13.3 - Окно диалога создания составных индексов.

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


Рисунок 13.4 – Диалоговые окна «Схема данных» и «Добавление таблицы»

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

В окне диалога «Изменение связей» поля со списками «Таблица/запрос» и «Связанная таблица/запрос» указывают на главную и подчиненную таблицы соответственно. Левый часть списка содержит поля главной таблицы участвующие в связи, а в правой части указываются связанные с ними поля подчиненной таблицы. При соединении с использованием простых ключей MS Access заполняет списки связей автоматически, но при соединении сложных ключей приходится заполнять списки вручную.

Окно диалога «Изменение связей» позволяет определять принципы поддержки ссылочной целостности, для этого используется группа флажков «Обеспечение целостности данных». Если флажок «Обеспечение целостности данных» не выставлен, то MS Access не следит за поддержкой целостности связанных записей.

MS Access поддерживает два основных принципа поддержки ссылочной целостности на удаление:

§ запрет на удаление записей главной таблицы, на которые существуют ссылки в подчиненных таблицах, если флажок «Каскадное удаление связанных записей» не включен;

§ при удалении записи главной таблицы, на которые существуют ссылки в подчиненных таблицах, происходит каскадное удаление последних, если флажок «Каскадное удаление связанных записей» включен (рисунок 13.5);

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

Рисунок 13.5 - Диалоговое окно «Изменение связей»

Контрольные вопросы

1. Какие новые возможности появились в СУБД MS Access 2000?

2. Какие категории объектов выделяют в СУБД MS Access?

3. Какие методы создания объектов можно назвать основными?

4. Назовите основные типы данных, используемые в MS Access .

5. Какие ограничения накладываются на имена полей и таблиц в СУБД MS Access ?

6. Какие режимы работы используются для работы с таблицей?

7. Назовите основные свойства полей MS Access .

8. В чем назначение вкладки «Подстановка»?

9. Как определяются ключи и индексы?

10. Как создаются связи между таблицами в СУБД MS Access ?

11. Какие принципы поддержки ссылочной целостности используются СУБД MS Access ?

Задания для самостоятельной работы

Задание 1. С учетом основных данных (таблицы 13.1 – 13.5) создайте оставшиеся таблицы БД ИС «Библиотека» и установите связи. Ключевые поля показаны курсивом. Описание создания таблицы «Книги» приводится ниже.

Таблица 13.1 – Свойства полей таблицы «Книги»

Подпись

Тип данных

Размер

Обяз. Поле

Индекс. поле

Пустые знач.

Условия

ISBN

Текстовый

14

Да

Да (совпадения не допускаются)

Нет

Название

Текстовый

Да

Нет

Текстовый

Издательство

Текстовый

Да

Нет

Место издания

Текстовый

Да

Нет

Год издания

Числовой

Целое

Да

>19 59

Страниц

Числовой

Целое

Да

Таблица 13.2 – Свойства полей таблицы «Экземпляры»

Подпись

Тип данных

Размер

Обяз. поле

Индекс. поле

Маска ввода

Инвентарный номер

Числовой

Дл.целое

Да

Да (совпадения не допускаются)

ISBN

Текстовый

Да

Да (совпадения допускаются)

Читательский билет

Числовой

Дл.целое

Да

Да (совпадения допускаются)

Наличие

Логический

Да

Дата взятия

Дата/Время

Кр.ф.даты

Да

Дата возврата

Дата/Время

Кр.ф.даты

Да

Таблица 13.3 – Свойства полей таблицы «Читатели»

Подпись

Тип данных

Размер

Обяз. поле

Индекс. поле

Пустые значения

Условия

Читательский билет

Числовой

Дл.целое

Да

Да (совпадения не допускаются)

ФИО

Текстовый

Да

Нет

Дата рождения

Дата/Время

Кр.ф.даты

Да

Пол

Текстовый

Да

Нет

«М» or «Ж»

Домашний телефон

Текстовый

Рабочий телефон

Текстовый

Таблица 13.4 - Свойства полей таблицы «Каталог»

Подпись

Тип данных

Размер

Обяз. поле

Пустые значения

Код области знаний

Числовой

Целое

Да

Наименование

Текстовый

Да

Нет

Таблица 13.5 - Свойства полей таблицы «Связь»

Подпись

Тип данных

Размер

Обяз. поле

Индекс. Поле

Пустые значения

ISBN

Текстовый

14

Да

Да (совпадения допускаются)

Нет

Код области знаний

Числовой

Целое

Да

Да (совпадения допускаются)

Пример создания таблицы «Книги»

Создадим таблицу «Книги» БД «Библиотека» на основе созданной ранее реляционной схемы, с учетом некоторых сформулированных ранее ограничительных условий. Для удобства основные свойства полей сведены в таблицы 13.1 – 13.5

1. В диалоговом окне БД (рисунок 13.1) выбираем категорию «Таблицы».

2. Открываем окно конструктора таблиц командой Создать-Конструктор или другим способом.

3. В раскрывшемся окне диалога (рисунок 13.2) устанавливаем курсор в первую свободную строку столбца «Имя поля» и вводим название поля - ISBN .

4. В столбце «Тип данных» указываем тип - текстовый (данное значение устанавливается по умолчанию).

5. Уточняем размер поля, для этого курсор устанавливается в позицию свойства – «Размер поля» (в нижней части окна конструктора, рисунок 13.2) и указываем значение – 14 .

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

8. Повторяем пункты 3 – 7 и аналогично создаем другие поля таблицы, но для поля Год_издания дополнительно установим свойство «Условие на значение» равным >1959 . Со свойством «Условие на значение» обычно устанавливают свойство «Сообщение об ошибке», например значение Книга издана до 1960 года!

9. Укажем первичный ключ для поля ISBN , для этого курсор устанавливаем на него и выполняем команду контекстного меню Ключевое поле.

10. Сохраним созданную таблицу под именем Книги . Окно диалога «Сохранение» вызывается каждый раз при закрытии измененной таблицы.

Аналогичным способом создаются и остальные таблицы БД.

Пример создания фиксированного списка

В некоторых случаях требуется создавать поля, в которые вводятся фиксированные значения из списка, например для таблицы Читатели в поле Пол могут вводиться только два значения «М» или «Ж» . Для создания поля со списком для поля Пол выполним следующие действия:

1. Выберем поле Пол .

2. Перейдем на вкладку бланка свойств «Подстановка».

3. Установим свойство Тип элемента управления в значение Поле со списком .

4. Установим свойство Тип источника строк в значение Список значений .

5. Установим свойство Источник строк в значение «М»;«Ж»

6. Сохраним изменения в таблице.

Рисунок 13.6 – Схема данных БД «Библиотека»

Задание 2. Установите связи между таблицами, как показано на рисунке 13.6. Руководствуйтесь правилами поддержания ссылочной целостности определенными в постановке задачи.

18.03.2014

Источник: Журнал "Технологии Защиты" № 1, 2014

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

Терминология

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

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

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

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

Разработчики различных приложений, в том числе и разработчики СКУД, работают именно с СУБД и выбирают СУБД под свои нужды.

Требования к СУБД, применяемым в СКУД

Какие же особенные требования следует предъявить к СУБД, используемой в СКУД с точки зрения пользователя?

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

Виды СУБД

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

Способ доступа к БД:

  1. Клиент-серверные СУБД
  2. Файл-серверные СУБД
  3. Встраиваемые СУБД

В клиент-серверных СУБД (Microsoft SQL Server, Oracle, Firebird, PostgreSQL, InterBase, MySQL и др.) вся обработка данных ведётся в одном месте, на сервере, в том же месте, где хранятся (обычно) данные, при этом к файлам данных имеет доступ только один сервер, одна система - это сама СУБД. Приложения-клиенты при этом посылают запросы на обработку и получение данных из СУБД и получают ответы; приложения-клиенты не имеют непосредственного доступа к файлам данных. Все промышленные СУБД на данный момент являются именно клиент-серверными.

В файл-серверных СУБД (Paradox, Microsoft Access, FoxPro, dBase и др.), наоборот, приложения имеют общий доступ ко всем файлам базы данных (хранящимся обычно в каком-то разделяемом файловом хранилище) и совместно обрабатывают эти данные. Каждое приложение самостоятельно обрабатывает данные. На данный момент файл-серверная технология считается устаревшей, а её использование в крупных информационных системах - недостатком. Проблема в том, что файл-серверные СУБД не имеют многих преимуществ клиент-серверных, таких как: кэширование данных, параллелизм запросов, высокая производительность и обладают рядом недостатков (сложности с поддержанием целостности базы, восстановлением, блокировками и т.д.), что приводит в свою очередь к пониженной надёжности и производительности. Состояние базы в файловых СУБД необходимо постоянно отслеживать и проводить операции по её «лечению» с помощью встроенных или сторонних утилит.

Встраиваемые СУБД (SQLite, Firebird Embedded, Microsoft SQL Server Compact и др.) поставляются в составе готового программного продукта, не требуя процедуры самостоятельной установки. Встраиваемые СУБД предназначены для локального хранения данных приложения и не рассчитаны на коллективное использование в сети. К примеру, встраиваемая бесплатная СУБД SQLite широко используется в известной мобильной ОС Android, разработанной в компании Google, и во многих мобильных приложениях.

Схема лицензирования:

  1. Бесплатные СУБД
  2. Коммерческие промышленные СУБД (большинство производителей предлагают также бесплатную ограниченную версию)

Файл-серверные и встраиваемые СУБД практически все являются бесплатными, из бесплатных клиент-серверных СУБД наиболее известные: Firebird, PostgreSQL и MySQL.

Чисто коммерческий продукт, разработанный компанией Borland: СУБД InterBase. Ранее у этой СУБД была бесплатная версия с открытым исходным кодом: InterBase 6.0, но проект InterBase 6.0 Open Source Edition перестал поддерживаться компанией Borland. В 2001 году группа энтузиастов создала отдельный Open source проект СУБД Firebird, упомянутой выше, который получил широкую известность и множество поклонников среди разработчиков.

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

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

Минусы: никто не даст гарантии, что через определенное время проект не перестанет существовать, т.к. его поддерживает сообщество энтузиастов, также сложнее найти грамотного специалиста для обслуживания СУБД типа Firebird или PostgreSQL.

Плюсы коммерческих СУБД: хорошая задокументированность, высокая производительность, масштабируемость, надёжность, поддерживаемость, наличие встроенных инструментов для разработки и администрирования. Вероятность того, что компания Oracle, Microsoft или IBM перестанут поддерживать свои системы, стремится к нулю.

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

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

Компания-производитель Бесплатные версии Ограничения
Microsoft SQL Server 2005 Express Edition (2005, 2008, 2008 R2, 2012) Размер базы данных - до 4 Гб, количество баз не ограничено, использует не более 1 Гб оперативной памяти и только 1 процессор (ядро) на многопроцессорных и многоядерных машинах. Поддерживаемые платформы: только Windows 2005 – только x86, 2008 – x86 и x64.
SQL Server 2008 Express Edition
SQL Server 2008 R2 Express Edition Размер базы данных - до 10 Гб, количество баз не ограничено, использует не более 1 Гб оперативной памяти и только 1 процессор (ядро) на многопроцессорных и многоядерных машинах. Поддерживаемые платформы: только Windows x86 и x64.
SQL Server 2012 Express Edition
Oracle Oracle Database 11g Express Edition, (Oracle Database XE) Суммарно до 11Гб пользовательских данных, использует не более 1Гб оперативной памяти и только 1 процессор (ядро) на многопроцессорных и многоядерных машинах. Поддерживаемые платформы: Windows x86, Linux x64.
IBM IBM DB2 Express-C Размер базы не ограничен, используется до 4Гб оперативной памяти и до 2-х процессоров. Поддерживаемые платформы: Windows x86 и x64, Linux x86 и x64, Unix x86 и x64, Solaris x86 и x64, Mac OS X

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

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

СУБД в СКУД

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

Производитель СКУД СУБД
Parsec ParsecNET 3 Microsoft SQL Server (в поставке 2005 Express, поддерживаются также версии 2008, 2008 R2, 2012) – центральная БД; SQLite - локальные базы рабочих станций.
Elsys Бастион 2 Oracle (в поставке 11g Express)
Perco S20 Firebird
НВП Болид Орион ПРО MS SQL Server (в поставке 2005 Express)
РусГард RusGuard MS SQL Server (в поставке 2008 R2 Express)
Равелин ЛТД Gate Microsoft Access
ПромАвтоматика Сервис Сфинкс MySQL
Кодос ИКБ Кодос Firebird
TSS Семь Печатей Firebird
Bosсh Building Integration System BIS Microsoft SQL Server (в поставке 2008 Express Edition)
Honeywell NexWatch (Honeywell Security) Microsoft SQL Server
Siemens SiPass Microsoft SQL Server
ААМ Системз Apacs Microsoft SQL Server, Firebird
Lyrix Oracle, Microsoft SQL Server, Borland InterBase

Как видно, большинство производителей СКУД поставляют бесплатную версию промышленной клиент-серверной СУБД Microsoft SQL Server Express Edition и свободную (бесплатную) кроссплатформенную СУБД Firefird (примерно 50 на 50).

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

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

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

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

  • При выборе СКУД обратите внимание на то, какая СУБД поставляется совместно с системой.
  • Если вы эксплуатируете СКУД, то выясните, какая СУБД в ней используется.
  • Оцените трафик данных и нагрузку в вашей системе, чтобы определиться с требуемыми аппаратными ресурсами сервера СУБД и нужной редакцией СУБД (проконсультируйтесь у производителя вашей СКУД при необходимости).
  • Если в вашей СКУД используется Express-версия Microsoft SQL Server или Oracle, то необходимо задаться вопросом: «Насколько нам хватит бесплатного объёма базы?». Настройте периодическое удаление из базы старых событий средствами СКУД (если таковые имеются) либо же рассмотрите вопрос о миграции на платную неограниченную версию СУБД.
  • Настройте резервное копирование баз данных средствами СКУД или же средствами СУБД и регулярно проверяйте его выполнение.
  • Найдите специалиста по СУБД (администратора), к которому можно будет обратиться в случае повреждения базы данных, узнайте в технической поддержке производителя СКУД возможность предоставления такого рода услуг.

Введение

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

Обеспечивать получение общих и/или детализированных отчетов по итогам работы;

Позволять легко определять тенденции изменения важнейших показателей;

Обеспечивать получение информации, критической по времени, без существенных задержек;

Выполнять точный и полный анализ данных.

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

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

СУБД MS Access и ее основные возможности

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

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

Глубоко развитые возможности интеграции с другими программными продуктами, входящими в состав МSOffice, а также с любыми программными продуктами, поддерживающими технологию OLE.

Богатый набор визуальных средств разработки.

MS Access - высокопроизводительная (32-разрядная) система управления реляционными базами данных, которая входит в состав профессиональной версии интегрированного пакета Microsoft Office. MS Access предназначена для разработки настольных баз данных и создания приложений баз данных архитектуры клиент-сервер, работающих под управлением операционных систем семейства Windows. Эта система доступна для пользователя любого уровня.

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

Общее описание пакета Access

Пакет Access входит в расширенную (профессиональную) поставку пакета MS Office и является более сложным в использовании по сравнению с пакетами Word и Excel.

Назначение: создание и использование баз данных.

База данных - набор логически связанной информации о некоторой области человеческой деятельности; база данных состоит из одной или нескольких связанных между собой таблиц; одна база данных пакета Access содержится в специальном файле с расширением. mdb (пример файла базы данных: Клиенты. mdb).

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

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

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

Поле - элементарная логически неделимая единица информации в базе данных. Каждое поле должно иметь уникальное имя и тип; тип поля зависит от типа хранящейся в нем информации; основными типами полей являются: числовой, текстовый (небольшой текст до 255 символов), счетчик (целые числа по порядку), поле МЕМО (большой произвольный текст), дата/время, денежный, поле объекта OLE (например - любое изображение); некоторые поля в таблице имеют специальное использование и называются ключевыми.

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

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

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

Работа с пакетом Access требует выполнения двух основных этапов:

Создание базы данных;

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

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

Полное «ручное» описание структуры базы данных как набора таблиц, записей и полей;

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

Описание каждой таблицы включает в себя:

Задание имени таблицы;

Определение ключевого поля (обычно это поле счетчика-кода), которое задается на первом месте в списке полей;

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

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

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

Использование созданной и заполненной базы данных основывается еще на двух основных понятиях - запрос и отчет. Запрос позволяет выполнить с хранящимися данными необходимые действия. Различают следующие типы запросов:

На выборку данных,

На добавление записей,

На удаление записей, на редактирование записей.

Наиболее часто используются запросы на выборку данных. Формирование запросов выполняется с помощью специального конструктора, который позволяет указать используемые в запросе таблицы, поля (не обязательно все, можно выбрать только необходимые!) и задать условия отбора данных. При задании условий можно использовать знаки отношений (=, <, >, <>), арифметических операций (+, -, *, /), логических опрециий(AND, OR, NOT, LIKE) и круглые скобки. Созданные запросы сохраняются в файле базы данных и могут использоваться многократно. На основе любого существующего запроса можно построить новый, изменив набор полей и условия отбора.

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

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

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

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

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

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

1. выборка,

2. добавление,

3. удаление,

4. изменение данных.

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

Добавление и удаление данных - добавление новых записей в таблицы и удаление существующих.



Изменение данных - изменение значений данных в полях существующих записей.

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

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

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

Среди многочисленных средств графического конструирования и диалоговых средств Access следует выделить средства для создания:



1. таблиц и схем баз данных, отображающих их связи;

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

4. экранных форм, предназначенных для ввода, просмотра и обработки данных в диалоговом режиме;

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

Средства программирования СУБД включают язык структурированных запросов SQL, язык макрокоманд и язык объектно-ориентированного программирования для приложений Microsoft Visual Basic for Applications (VBA).

VBA является частью семейства Microsoft Visual Basic, которое входит в состав Visual Studio. VBA является базовым компонентом Microsoft Office: он интегрирован в Access, Excel, FrontPage, Outlook, PowerPoint и Word. Все эти приложения, в том числе и локализованные на русском языке, используют англоязычный вариант VBA (включая справочную систему). VBA входит во все варианты поставок Microsoft Office.

VBA представляет собой базовую платформу программирования не только в среде Microsoft Office, но и многих других приложений. VBA содержит средства доступа не только к базам данных Access, но и к базам данных клиент-серверной архитектуры, таким как Microsoft SQL Server, Oracle и др.

Access 2010 входит в состав Microsoft Office 2010 (в наборы приложений выпусков Профессиональный, Профессиональный Плюс и Корпоративный). Для работы Access 2010 рекомендуется использовать компьютер с частотой процессора не ниже 500 МГц и RAM не менее 256 Мб. Компьютер должен работать под управлением одной из операционных систем:

1. Windows ХР с пакетом обновления 3 (SP3) (32-разрядная);

2. Windows Vista с пакетом обновления 1;

4. для ряда дополнительных возможностей по совместной работе требуется Windows Server 2003 R2 с установленным MSXML 6.0 с выполняемыми службами Microsoft Windows SharePoint Services или Windows Server 2008 (32- или 64-разрядная).

Для сбора данных с использованием электронной почты требуется Microsoft Outlook. Более насыщенные функциональными возможностями новые системы семейства Windows в сочетании с пакетом Office 2010 дают пользователю возможность наиболее эффективно применять компьютер, но их установка не является обязательным условием для работы с пакетом Office 2010.

При переходе с Microsoft Office 2007 на версию 2010 оборудование обновлять не нужно, хотя может потребоваться выполнить обновление операционной системы. Практический минимум, предъявляемый Access 2010 к персональному компьютеру (процессор с частотой 233 МГц и 128 Мб оперативной памяти), возрастает при одновременном выполнении нескольких приложений Office 2010, так как для каждого приложения требуются дополнительные ресурсы.

При стандартной установке Access 2010 профессиональных выпусков требуется примерно 2 Гб свободного дискового пространства. Часть места на диске будет освобождена после установки при удалении с него исходного загрузочного пакета. В процессе установки на диске необходимо иметь дополнительное пространство примерно такого же объема.

Рекомендуется монитор с разрешением не менее 1024 768 или с более высоким разрешением с поддержкой 256 цветов. При установке приложений Office 2010 на локальном компьютере требуется дисковод CD-ROM или DVD-дисков.

Преимущества СУБД Microsorf Access:

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

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

Практически безграничные возможности экспорта данных: данные из таблиц щелчком одной клавиши мыши можно перенести в Excel, Word, экспортировать в XML, опубликовать в PDF, не говоря уже о том, чтобы без проблем перенести выбранные объекты в другую базу данных.

Невысокая цена. Если покупать MS Access в составе полного пакета Microsoft Office, то, по сравнению с другими платными СУБД, цена окажется очень заманчивой.

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

Широкие возможности импорта данных: если у вас есть табличные данные, созданные при помощи текстового процессора MS Word или табличного процессора MS Excel, вы с помощью мастера без труда перенесете их в свою базу. Импорт, кроме того, можно выполнить из простого текстового документа, из документа XML, а также из файлов баз данных, созданных в других СУБД (таких как dBASE, PARADOX).

Возможность создания пароля на своей базе данных.

Встроенный язык VBA высокого уровня.

Возможность записи макросов. Редактор SQL.

Для программистов можно выделить еще один значительный плюс: ядро Access JET 4 встроено в операционные системы Microsoft, начиная с Windows-98. Это значит, что разработанное приложение, использующее в работе базу данных, созданную в Access, можно без проблем переносить на любой компьютер с ОС Windows. Оно будет работать, не требуя установки самой СУБД. В крайнем случае потребуется лишь установка RUNTIME - версии, которую можно абсолютно бесплатно скачать с сайта Microsoft.

Как видим, достоинства СУБД MS Access налицо. Но все плюсы могут перекрыться вполне существенными минусами.

Недостатки СУБД Microsoft Access:

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

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

Многопользовательский режим возможен только в одноранговой сети или в сети с файловым сервером.

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

Редактор запросов SQL примитивен, использовать его неудобно.

Данная СУБД не бесплатная.

MS Access заточен под операционные системы Windows. Чтобы попытаться использовать данные, созданные в этой СУБД в других ОС (например, LINUX), придется изрядно повозиться. Проще перенести данные в другую СУБД.

Как реляционная СУБД Access обеспечивает доступ ко всем типам данных и позволяет одновременно использовать несколько таблиц базы данных. Можно использовать таблицы, созданные в среде Paradox или dBase. Работая в среде Microsoft Office, пользователь получает в своё распоряжение полностью совместимые с Access текстовые документы(Word), электронные таблицы(Excel), презентации(PowerPoint).С помощью новых расширений для Internet можно напрямую взаимодействовать с данными из World Wide Web и транслировать представление данных на языке HTML, обеспечивая работу с такими приложениями как Internet Explorer и Netscape Navigator.

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

Несмотря на то, что Access является мощной и сложной системой, его использование не сложно для непрофессиональных пользователей.

Описание СУБД MySQL

MySQL – это свободно распространяемая СУБД, разработанная компанией MySQL AB. MySQL имеет клиент-серверную архитектуру: к серверу MySQL могут обращаться различные клиентские приложения, в том числе с удаленных компьютеров. Рассмотрим важнейшие особенности MySQL, благодаря которым эта программа приобрела популярность.

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

MySQL – кроссплатформенная система. Ее можно использовать практически во всех современных операционных системах, в том числе Windows, Linux, Mac OS, Solaris, HP-UX и др.

MySQL имеет множество программных интерфейсов (API), благодаря которым к базе данных MySQL могут подключаться приложения, созданные с помощью C/C++, Eiffel, Java, Perl, PHP, Python, Tcl, ODBC, NET и Visual Studio.

MySQL имеет отличные технические характеристики: многопоточность, многопользовательский доступ, быстродействие, масштабируемость.

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

Описание SQLite

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

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

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

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

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

Инрерфейс является верхним модулем и состоит из м C API. Общение с SQLite производится через него.

Несмотря на маленький размер, SQLite предоставляет обескураживающий спектр особенностей и возможностей. Он поддерживает весьма полный набор стандарта ANSI SQL92 для особенностей языка SQL, а так-же такие особенности как триггера, индексы, столбцы с автоинкрементом, LIMIT/OFFSET особенности. Так же поддерживаются такие редкие свойства, как динамическая типизация и разрешение конфликтов.