
- •Создание базы данных на примере реляционных субд, в программной среде Microsoft Access
- •Определение ключа таблицы
- •Свойства полей
- •Связывание таблиц
- •Просмотр связанных таблиц
- •Создание запросов в программной среде Microsoft Access
- •Создание вычисляемых полей в запросе
- •Перекрестные запросы
- •Запрос с параметрами
- •Работа с фильтрами
- •Предложение select
- •Предложение from
Связывание таблиц
После того как таблицы созданы, можно задать их связанность. Для этого надо выбрать позицию меню Сервис/Схема данных или пиктограмма в панели инструментов. Добавить те таблицы, между которыми будет определяться связь. Такие таблицы чаще всего связаны отношением 1: М. Для установления связи нужно при нажатой левой клавиши мыши подхватить значок поля связи в основной таблице и перетащить на соответствующее поле в зависимом файле и отпустить клавишу мыши. После этого на экране появится окно Изменение связей. Далее следует определить, нужно ли задавать ограничения целостности связи и, если да, то выбрать режимы корректировок. Если задается ограничение целостности, то поле связи основной записи должно быть проиндексировано.
Опция Каскадное обновление связанных полей означает, что при изменении первичного ключа в основной таблице соответствующие поля в связанной таблице автоматически изменяются.
Опция Каскадное удаление связанных записей означает, что при удалении записи из одной таблицы будут ликвидированы все записи из других таблиц, относящиеся к этой теме. Например, при связывании таблиц, при ликвидации какого-либо вида страхования будут удаления все записи о клиентах, выбравших этот вид страхования.
Существуют понятия внутреннего, левого и правого соединения. В окне Изменение связей кнопка Объединение позволяет настроить Параметры объединения, где можно выбрать три варианта:
Внутреннее - Объединение только тех записей, в которых значения связанных полей обеих таблиц совпадают;
Левое - Объединение всех записей первой таблицы и только тех записей из второй таблицы, в которых значения связанных полей обеих таблиц совпадают;
Правое - Объединение всех записей второй таблицы и только тех записей из первой таблицы, в которых значения связанных полей обеих таблиц совпадают.
Параметры объединения влияют на то, какие записи из связанных таблиц будут выводиться в ответ при просмотре БД.
Просмотр связанных таблиц
В Access, при работе с таблицей можно просматривать и корректировать данные не только текущей таблицы, но и связанных с ней таблиц.
Если таблицы предварительно связаны, то при просмотре таблицы, имеющей подчиненные ей таблицы, между колонкой выделения и первым столбцом таблицы появляется столбец, в котором в каждой строке стоит знак "+". Если щелкнуть по нему левой клавишей мыши, то открывается диалоговое окно, где перечислены все записи подчиненной таблицы, которые относятся к данной записи основной таблицы.
Если таблица имеет несколько подчиненных таблиц, то одновременно в режиме таблицы можно просматривать только одну из них. Выбрать нужную таблицу можно через меню Вставка – Подтаблица.
Можно просматривать цепочку иерархически связанных подтаблиц, если таковая имеется. В этом случае, окна взаимосвязанных таблиц могут быть открыты одновременно, каскадом, при раскрытии группы.
Задание ограничений целостности
Обеспечение целостности БД – важнейшая задача при создании БнД, поскольку обеспечение адекватности базы данных отображаемой предметной области, отсутствие противоречий является одним из основных требований предъявляемых к БнД.
Ограничения, относящиеся к полю
Тип поля определяет допустимые символы, которые могут быть использованы при его заполнении. Например, запрещается программой вводить текст в числовые поля. Для поля "Дата" осуществляется более сложная проверка. Если допущена ошибка, то ее непременно нужно исправить, иначе продолжение работы невозможно.
Размер поля, зафиксированный в свойстве или выбранный в соответствии с типом поля, не позволяет ввести в поле большее количество символов.
Условия на значения вводятся как выражения. Выражения могут быть простыми и сложными, формируются при помощи построителя выражений. Например, условие >#1.98#, заданное как Условие на значения для поля Дата заключения договора, будет означать, что ввод дат допустим только после 1 января 1998 года.
Если задается значение свойства "Условия на значения", то следует задать текст вывода сообщения об ошибке. Текст вводится в качестве значения свойства "Сообщение об ошибке".
Маска ввода применяется для того, чтобы ограничить символы, которые будут использованы при заполнения значения поля. Маска ввода создается только для текстового поля и поля Дата/время. Например, в таблицу нужно ввести имена сотрудников. Для соответствующего поля можно задать маску ввода, которая позволит использовать только буквы при вводе, обеспечить преобразование первого символа в верхний регистр, всех остальных – в нижний и допускает использование не менее двух букв. В Access, такая маска будет выглядеть следующим образом: >L<L?????????????????????. Символ "L" обозначает, что в данную позицию обязательно должна быть введена буква, символ "?" – в данную позицию не обязательно, но может быть введена буква. Символ ">" преобразует все символы, расположенные правее этого знака к верхнему регистру, символ "<" преобразует все символы, расположенные правее этого знака к нижнему регистру.
Назначение всех допустимых в масках символов можно посмотреть в Справочной системе.
Маски ввода не только обеспечивают контроль допустимости используемых символов, но и облегчают процесс ввода данных.
Индексированное поле используется для контроля на уникальность. После определения в таблице ключа по этому полю проводится индексирование и запрещается ввод повторяющихся или пустых значений ключа.
Ограничения, относящиеся к записи
Если ограничения целостности затрагивают несколько полей одной записи, то они должны задаваться не как свойство записи, а как свойство таблицы. Для вызова диалогового окна свойств следует вызвать контекстно-зависимое меню на строке заголовка таблицы в режиме Конструктора.
Целостность связи
При задании связи между таблицами в Access можно установить флажок Поддержание целостности данных, и в этом случае система будет автоматически поддерживать ограничения целостности связи.
При удалении основной записи, связанной с несколькими подчиненными, могут быть выбраны разные стратегии обновления:
Запретить удалять основную запись, если имеются подчиненные;
Удалить вместе с основной записью и все подчиненные (каскадное удаление).
Для задания сложных условий проверки целостности можно использовать макросы или модули.
Организация ввода и корректировка данных в БД
Заполнение БД можно осуществлять:
посредством ввода данных с клавиатуры;
переноса данных из других файлов;
путем импорта из других систем;
формированием записи программным путем (на языке программирования).
Посредством ввода данных с клавиатуры приступают после завершения проектирования структуры базы данных. Для чего осуществляется переход в режим Таблица и производится ввод данных с клавиатуры одним из способов:
меню Записи – Ввод данных;
меню Вставка – Новая запись;
создание экранных форм требуемого вида
Для облегчения процесса ввода данных используют свойства полей: значение по умолчанию, маска ввода, формат поля.