Введение в Microsoft Access

Категория: Материалы студентам
Опубликовано 16.02.2015 18:50
Автор: Шитов В.Н.
Просмотров: 4539

 Введение в Microsoft Access

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

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

Имя поля лучше начинать с буквы. В имени поля не допускаются некоторые символы: / *; : ! ? # & $ % “ ' - и не желательно использовать пробел. Хотя в самом Access пробел явно не запрещен, но так как таблицы из Access могут быть использованы в других программах, то там могут возникнуть проблемы. Чтобы избавиться от возможных проблем раз и навсегда вместо пробела желательно использовать символ подчерка (_). В имени поля можно использовать буквы английского и русского алфавита, цифры, символ подчерка. Имя поля должно быть понятно как разработчику БД, так и пользователю этой БД, то есть не нужно использовать имена, похожие на пароли. Хотя многие символы явно не запрещены (∩≈∞+), но лучше кроме символа подчерка другие символы не использовать, чтобы не было конфликтов между программами, если таблицы будут использоваться другими программами, где символы запрещены.

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

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

Все объекты базы данных выводятся на панель Все таблицы, которая по умолчанию расположена в левой части рабочего окна. Кроме таблиц на этой панели могут располагаться Формы, Запросы, Отчеты: все они относятся к группам таблиц. Если для создания запроса использовалось несколько таблиц, то запрос будет выведен на панели таблиц столько раз, сколько таблиц использовалось в этом запросе. Так как объектов в базе данных может быть много, то для упрощения поиска нужного объекта некоторые таблицы можно закрыть. Это можно выполнить несколькими способами:

1) С помощью кнопок () и () можно свернуть или развернуть объекты в таблице;

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

3) Щелкнуть правой клавишей мыши по заголовку группы таблицы и из открывшегося контекстного меню выполнить команду Свернуть группу.

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

1) Выполнить команду Конструктор из контекстного меню таблицы в списке таблиц;

2) Выполнить команду Конструктор из контекстного меню ярлычка таблицы;

3) На риббоне Главная или Режим таблицы откройте список Режим и выберите значение Конструктор;

4) Выполнить команду СозданиеКонструктор таблиц. В этом случае создается новая пустая таблица и открывается Конструктор.

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

1) Выполнить команду Ключевое поле из контекстного меню имени поля в Конструкторе таблицы;

2) Выполнить команду КонструкторКлючевое поле.

Ключевое поле определяется при создании полей таблицы: когда таблицы еще не связаны между собой. Если таблицы связаны, то изменить ключевое поле можно только после удаления связи между этими таблицами. В ключевом поле обычно используется тип данных Счетчик, но не обязательно: можно использовать и другие типы данных, например, Текстовый. Ключевыми не могут поля, имеющие тип данных Объект OLE, Поле МЕМО и Гиперссылка. Так как ключевым или первичным может быть только одно поле в таблице, то остальные поля являются неключевыми или вторичными.

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

Счетчик — создает уникальные записи с индексом, начиная от 1, прибавляя в каждой очередной записи таблицы к предыдущему индексу число 1.

Текстовый — хранит текст до 255 символов. Даже если в текстовое поле ввести цифры, то они также будут считаться текстом и с ними невозможно будет выполнить математические действия. Например, почтовые индексы, табельные, номенклатурные, инвентарные номера, артикулы, штрих-коды нужно создавать с текстовым типом данных, так как нет никакого смысла складывать 2 индекса и делить их потом пополам, или, например, из одного номера телефона вычитать другой. Длину поля определяет сам пользователь. Например, в поле «Месяц» можно определить длину текста в 8 символов, так как в самом длинном (по числу символов) месяце «Сентябрь» именно 8 символов.

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

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

Дата/Время — хранит дату или время или сразу и дату и время. Дата является числом, а значит с ними можно выполнять математические действия. Например, отняв от текущей даты дату рождения можно вычислить возраст человека. Отсчет дат начинается с 01.01.1900 года.

Логический — хранит истину или ложь. Истину и ложь можно определить разными способами, например, 1 и 0, или Да и Нет, Истина и Ложь, Вкл/Выкл. Конкретное значение можно определить в параметре Формат поля.

Поле MEMO — может хранить до 64 000 символов, например, техническое описание чего-либо, инструкция, характеристика.

Объект OLE — объектом OLE (ObjectLinkingandEmbedding) может быть документ практически любой программы, например, фотография или рисунок, видео или аудио, веб-страница.

Гиперссылка — хранит гиперссылки, например, адреса сайтов или электронных почтовых ящиков.

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

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

Создание фиксированных наборов значений

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

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

Для создания фиксированного списка щелкните мышью по типу данных в поле, для которого создается список фиксированных значений. Нажмите на появившуюся треугольную кнопочку и выполните самую последнюю команду в списке: Мастер подстановок. В открывшемся окне выберите положение переключателя. Будет введен фиксированный набор значений. Нажмите на кнопку Далее. Выберите число столбцов значений (обычно 1 столбец). Введите список значений. Перемещение на 1 строчку вниз выполняется с помощью клавиши ↓ на клавиатуре ПК (нажатие на клавишу Enter не используется, так как будет запущен следующий шаг Мастера). После создания списка фиксированных значений нажмите на кнопку Далее или Готово.

Связывание таблиц или установка отношений между таблицами

Для связывания пары таблиц нужно использовать ту, в которой связываемое поле является не первичным, а вторичным. Запустите Мастер подстановок (см. Создание фиксированных наборов значений). В открывшемся окне Мастера выберите положение переключателя Объект «столбец подстановки» будет использовать значения из таблицы или запроса. Нажмите на кнопку Далее. В следующем шаге Мастера выбирается таблица (или запрос), с которой нужно связать текущую таблицу. Нажмите на кнопку Далее. В следующем шаге Мастера выберите поле, с которым нужно связать поле из текущей таблицы и нажмите на кнопку >. Связывание выполняется не обязательно с одним полем, а с любым числом полей. Например, мы решили связать поле Код_клиента с одноименным полем в другой таблице. Теоретически мы делаем все правильно, но практически мы создаем себе грандиозные сложности в будущем, так как код клиента ничего не сообщает нам о самом клиенте: мы не знаем, кто скрывается за каждым кодом и чтобы узнать это будем вынуждены вручную сверяться с различными справочниками. Поэтому будет правильнее, если мы поле Код_клиента в исходной таблице свяжем сразу с двумя полями: Код_клиента и ФИО_клиента. После этого во всех последующих шагах Мастера нажимайте на кнопку Далее, а в последнем шаге: на кнопку Готово.

В связываемых полях должны совпадать типы данных. Например, поле с типом данных Счетчик можно связать с типом данных Числовой, а тип Числовой нельзя связать с типом Текстовый. В этом месте студенты часто спрашивают: нет ли в моих словах ошибки или неточности, так как мы только что связывали числовой тип Код_клиента с типом Счетчик (Код_клиента) и с текстовым полем (ФИО_клиента)? На самом деле никакой ошибки нет, так как мы связываем только поля Код_клиента, а поле ФИО_клиента просто извлекается из строки по найденному полю Код_клиента, поэтому тип данных в этом дополнительном поле не имеет никакого значения. Поэтому мы могли бы добавить к полю Код_клиента не только ФИО_клиента, но также его адрес или любые его данные.

После завершения связывания таблиц анализируется схема данных. К моменту запуска схемы данных таблицы БД еще могут быть открыты, но для анализа схемы данных ВСЕ таблицы должны быть ЗАКРЫТЫ. Если таблицы случайно закрыты не будут, то при попытке изменить параметры связи между таблицами будет выводиться сообщение, что нельзя нарушить целостность ядра данных.

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

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

Если после этого выводится сообщение об ошибке, то:

1) Проверьте, не открыта ли случайно какая-либо таблица;

2) Удалите связь между парой таблиц, закройте схему данных, сохранив изменения. С помощью Конструктора проверьте все параметры связываемой пары полей в связываемых таблицах.

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

Создание форм

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

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

Создание запросов

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

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

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

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

В условиях отбора можно указывать логические выражения. Например, можно отображать туры, стоимость более 100000, указав <100000.

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

Создание отчетов

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