Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование_Таблиц.doc
Скачиваний:
10
Добавлен:
06.11.2018
Размер:
889.86 Кб
Скачать

6. Ввод данных в таблицы субд Microsoft Access

Имеются следующие виды ввода данных в таблицы Microsoft Access:

  • непосредственный ввод с клавиатуры,

  • импорт таблицы из другой базы данных СУБД,

  • импорт электронной таблицы типа Excel.

Ниже рассматривается непосредственный ввод с клавиатуры, поскольку такой вид ввода является определяющим при создании, изменении и пополнении БД.

Ввод с клавиатуры производится:

  • непосредственно в таблицы,

  • при помощи форм.

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

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

В обоих способах ввод данных в связанные таблицы позволяет производить однократный ввод значений одних и тех же реквизитов одновременно в несколько связанных таблиц, обеспечивая тем самым целостность данных в этих таблицах. Перед вводом данных в связанные таблицы необходимо создать Схему данных и в окне “Изменение связей” установить флажок “Обеспечение целостности данных”. Как правило, устанавливаются также флажки “Каскадное обновление связанных полей” и “Каскадное удаление связанных полей”. Наличие Схемы данных обязательно для построения составных связанных форм.

6.1. Ввод данных при помощи таблиц

Для ввода данных в таблицу необходимо ее открыть. Для этого необходимо выбрать в окне базы данных объект Таблицы, выделить нужную таблицу и выбрать пункт меню Открыть или дважды щелкнуть по имени таблицы. Переход от одного поля к другому производится при помощи клавиши Tab или Enter. Для отказа от ввода неправильного введенного данного следует нажать клавишу Esc. Чтобы удалить строку, нужно ее выделить в крайнем левом столбце и нажать клавишу Delete (или Del).

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

Товар → Продажа→ Покупатель→ Счет → Спецификация счета

или

Покупатель → Товар → Счет→ Спецификация счета → Продажа

или

Покупатель → Счет→ Товар → Продажа→ Спецификация счета

или

Покупатель → Товар → Продажа→ Счет → Спецификация счета

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

Если нарушить этот порядок, то Microsoft Access выдаст сообщение об ошибке. Например, если попытаться ввести какое-то значение поля ПЛЧ в таблицу Продажа, не заполнив предварительно это поле в таблице Товар, то Microsoft Access выведет следующее сообщение:

Microsoft Access допускает ввод данных одновременно в несколько связанных таблиц, находящихся в отношении “Один-ко-многим” или “Один-к-одному”. Связь осуществляется при помощи схемы данных. В настоящем пособии рассматривается только ввод в таблицы, связанные отношением “Один-ко-многим”. Ввод в таблицы, связанные отношением “Один-к-одному”, см. в [1].

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

На рис. 19 представлена главная таблица Товар из базы данных sale.mdb, связанная с подчинённой таблицей Продажа отношением “Один-ко-многим”.

Рис.19. Главная таблица Товар

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

  1. Откройте таблицу или запрос в режиме таблицы.

  2. В меню Вставка выберите команду Подтаблица.

  3. Откройте вкладку Таблицы.

  4. В диалоговом окне Вставка подтаблицы (рис.20) выберите таблицу из списка. В качестве примера используем подтаблицу Продажа.

  5. В поле Подчиненные поля выберите поле, которое должно быть полем внешнего ключа (или полем соответствия) для таблицы, являющейся подтаблицей, выбранной на шаге 4 (поле Код товара).

  6. В поле Основные поля выберите поле, которое должно быть первичным ключом (или полем соответствия) для таблицы, являющейся основной таблицей, открытой на шаге 1 (поле Код товара).

Рис.20. Вставка подтаблицы

Примечание. Если в поле Подчиненные поля или Основные поля нужно задать несколько полей, введите их имена, разделяя их точкой с запятой (;), например, Фамилия;Имя

Если щёлкнуть мышью по знаку “+”, то знак “+” меняется на “–”, и на экран вместе с главной таблицей выводятся строки подчинённой таблицы, соответствующие текущей записи главной таблицы. При этом значение ключа связи в подчинённой таблице не выводится (рис. 21).

Рис. 21. Вывод подтаблицы в главной таблице.

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

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

Рис. 22. Вывод на экран последовательно подчиненных таблиц

Если в схеме данных установлены флажки “Обеспечение целостности данных”, “Каскадное обновление связанных полей” и “Каскадное удаление связанных записей”, то изменение значения ключа связи и/или удаление строки в главной таблице приведёт к соответствующим изменениям в подчинённой таблице.

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