Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛабРаб1.doc
Скачиваний:
5
Добавлен:
21.09.2019
Размер:
85.5 Кб
Скачать

Ввод данных в таблицу

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

Импортирование таблиц учебной базы данных

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

  1. Выполнить команду Файл|Внешние данные|Импорт.

  2. Выбрать файл, содержащий необходимые объекты и нажать кнопку Импорт.

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

  4. Нажать кнопку ОК.

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

Создание базы данных приложения

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

Установление ограничений ссылочной целостности между таблицами контейнера УчебТаблN

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

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

Связь устанавливается между ключом одной таблицы (называемой родительской) и полем (полями) другой таблицы, называемой дочерней. Поле связи в дочерней таблице называется полем внешнего ключа. Целостность данных, обеспечиваемая такой связью, гарантирует отсутствие сирот, то есть в дочерней таблице не может оказаться записей, для которых нет соответствующей записи в родительской таблице. Причем, соответствие означает одинаковость значений в полях, по которым устанавливается связь. Пусть, например, ключевым полем в таблице Поставщик является поле ID, содержащее идентифицирующий номер поставщика. Чтобы таблицу Поставщик можно было связать с таблицей Заказ, в последней должно быть поле (поле внешнего ключа), обеспечивающее информацию о принадлежности каждого заказа конкретному поставщику. Назовем его ID-S. Целостность данных в этом конкретном примере означает, что для каждого заказа в таблице Заказ должен существовать поставщик в таблице Поставщик. То есть, если есть записи со значением в поле ID-S, скажем 5 (таких записей может быть несколько), то в таблице Заказы должна существовать запись, у которой в поле ID находится значение 5. Запись со значением ID=5 в таблице Поставщик, естественно, будет единственной, поскольку поле ID является ключевым в данной таблице. Такая связь называется связью один-ко-многим.

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

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

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

  1. с помощью кнопки Добавить окна Схема данных;

  1. с помощью кнопки Добавить таблицу панели инструментов;

  1. с помощью команды Добавить таблицу контекстного меню, вызываемого в окне Схема данных.

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

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

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

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

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

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

Установление связи с таблицами контейнера УчебТаблX

Для установления связи базы данных УчебПрилN с таблицами контейнера УчебТаблN следует выполнить команду Файл|Внешние данные|Связь с таблицами, в появившемся диалоговом окне выделить файл, содержащий таблицы (УчебТаблN), нажать кнопку Связь, выбрать нужные таблицы (для выбора всех таблиц нажать кнопку Выделить все) и нажать ОК. Можно установить связь лишь с теми таблицами, которые необходимы для работы данного приложения. Слева от имен таблиц в окне базы данных УчебПрилN появится символ стрелки. Этот символ говорит о том, что таблицы хранятся в другом файле, а в данной БД с ними установлена связь. База данных может содержать как связанные таблицы, так и локальные, т.е. находящиеся в том же самом файле. Работа с данными в связанных и локальных таблицах выполняется совершенно одинаково. Но изменения структуры и свойств возможно только для локальных таблиц, а для изменения связанных таблиц необходимо открыть файл, содержащий эти таблицы.

Внимание! Контейнер УчебТаблN должен содержать только таблицы! Вся дальнейшие операции по выполнению лабораторных работ должны производится только в контейнере УчебПрилN, в котором должны создаваться все объекты СУРБД

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

  1. Почему порядковый номер объекта в списке должен обладать уникальностью?

  2. Какова характерная особенность поля типа Мемо?

  3. Какого типа должен быть внешний ключ таблицы?

  4. Зачем рекомендуется создавать отдельную БД только для таблиц?

  5. Что позволяет делать опция каскадное обновление связанных полей?

  6. Что гарантирует обеспечение целостности данных?

  7. С помощью каких команд можно добавлять таблицы в окне Схема данных?

  8. Какие правила обеспечивают целостность данных?

  9. С помощью какой команды осуществляется импорт объекта в текущую БД?

  10. Каким правилам должно удовлетворять имя таблицы?

  11. В каком режиме осуществляется ввод данных в таблицу?

  12. Для чего устанавливаются связи между таблицами?

8