- •Методические рекомендации к лабораторным работам по дисциплине «Базы данных» Лабораторная работа № 1. Ознакомление со средствами работы с базами данных (субд). Создание и заполнение базы данных
- •1. Цель работы
- •2. Содержание работы:
- •3. Некоторые теоретические сведения Проектирование бд
- •Контроль вводимых данных.
- •1. Проверка правильности при вводе
- •2. Использование триггеров
- •3.1. Работа с локальной базой данных Создание базы данных и таблиц бд
- •Работа с удаленной (серверной) базой данных
- •3. Порядок выполнения работы
- •Заполнение таблиц базы данных
- •Просмотр содержимого баз данных
- •Связывание таблиц базы данных и целостность ссылочной системы
- •3.2. Работа с удаленной (серверной) базой данных
- •4. Форма отчетности
- •5. Контрольные вопросы
- •Литература
Заполнение таблиц базы данных
Для заполнения таблицы необходимо выделить заголовок таблицы мышкой в Диспетчере проектов и нажать кнопку Browse. Для ввода записи FoxPro включает окно, в котором все поля одной записи таблицы расположены друг под другом в отдельных строках. Курсор находится в первой строке, где FoxPro ожидает ввода номера первого документа. Введите данные в соответствующие поля. После завершения ввода данных в одно поле с помощью [Tab] переходите к следующему. Чтобы добавить новую запись в таблицу, выберите пункт Append Mode в меню View.
Для заполнения Memo-поля необходимо выполнить на нем двойной щелчок мышью. Откроется окно с именем типа Имя_таблицы.Имя_поля в строке заголовка. В это окно следует ввести содержание документа или характеристику исполнителя.
Для заполнения поля фотографии, дважды щелкните по нему мышью. Откроется окно с именем типа Имя_таблицы.Имя_поля. Для встраивания объекта вызовите директиву Insert Object из Edit-меню и выберите тип объекта. Вы можете создать новый объект или создать объект из файла, поставив соответствующий флажок в окне. Вставка объекта и выбрать файл, нажав кнопку Обзор.
Просмотр содержимого баз данных
Структура базы данных изображена в Диспетчере проектов. Структуру элементов базы данных и связи между ними можно посмотреть в окне. Содержимое конкретной таблицы можно просмотреть:
1) из Конструктора таблиц, щелкнув по строке заголовка окна этой таблицы;
2) из Диспетчера проектов, выделив ее имя и нажав кнопку Browse.
Обычно данные представляются в виде последовательности записей для удобства редактирования (режим Edit). Однако можно представить данные и в обычной табличной форме. Для этого необходимо войти в меню View и выбрать режим Browse.
Установите в одном окне оба варианта просмотра. Откройте дополнительные окна для просмотра данных из подчиненных баз данных и разместите их на экране таким образом, чтобы были видны все три окна.
Дополните командный файл установления отношений директивами создания русифицированного Browse-окна. В этой программе должны быть поля из всех трех баз данных: Номер_зачетки, ФИО (таблица Студенты), Наим_Предмета (таблица Предметы), Дата сдачи, Оценка (таблица Сессия). Каждая колонка должна иметь русский заголовок. Фамилии студентов и названия предметов должны выводиться русскими буквами.
Связывание таблиц базы данных и целостность ссылочной системы
Выполните связывание баз данных документов и исполнений.
Для этого необходимо создать индексы:
- в таблице Студенты – по полю Номер_зачетки (первичный ключ),
- в таблице Предметы – по полю Код_предмета (первичный ключ),
- в таблице Преподаватели – по полю Код_преподавателя (первичный ключ)
Для работы с элементами базы данных существует Конструктор Базы Данных. Чтобы войти в него, выберите пункт Database Designer меню View. В Конструкторе БД каждая таблица представлена отдельным окном с именем таблицы в строке заголовка. Окно содержит список полей таблицы и список индексов таблицы, располагающийся под списком полей. Изображение ключа перед индексом обозначает, что данный индекс является первичным.
Для создания связи между таблицами Студенты и Сессия надо нажать кнопку мыши на первичном индексе «Номер зачетки» в таблице Студенты и, не отпуская ее, переместить указатель мыши на индекс Код_студента таблицы Сессия. В окне Конструктора БД мы увидим созданную связь визуально.
Точно также надо связать таблицы Преподаватель и Сессия, Предмет и Сессия.
Для определения типа связи между таблицами Студенты и Сессия необходимо открыть окно Data Session в пункте меню Window.
В левом поле Aliases окна Data Session содержатся имена таблиц вашей базы данных. Если оно пусто, нажмите кнопку Open и выберите нужные таблицы. Справа в расположено поле Relations, которое предназначено для отображения связей между таблицами. В окне Data Session постоянные связи не наследуются, и отношения между таблицами надо устанавливать вручную. Для этого следует использовать кнопку Relations. Выберите из списка открытых таблиц ту, которая будет родительской в устанавливаемом отношении. Нажмите кнопку Relations, a затем выберите в списке Aliases таблицу, которая должна быть подчинена первой таблице (дочернюю). Появится диалоговое окно Set Index Order. В этом окне необходимо выбрать индекс в дочерней таблице, по которому будет установлено отношение. После этого появится окно построителя выражений Expression Builder, в котором надо указать поле в родительской таблице, которое должно быть связано с индексом, выбранным в дочерней таблице. По умолчанию создается отношение 1:1. Создайте отношение 1:М. Для этого выделите мышкой родительскую таблицу в правой части окна Data Session (где изображена связь таблиц) и нажмите кнопку 1_to_many. В открывшемся окне Create One-To-Many Relationships выберите имя дочерней таблицы. Закройте окно. Вы увидите, что в поле связей установлена связь "1 ко многим".
Аналогичным образом установите отношение 1:М для таблиц Преподаватели и Сессия, Предметы и Сессия.
После установления связей между таблицами может быть произведена проверка целостности ссылочной системы (referential integrity), которая задается с помощью специального построителя, вызываемого из Database Designer нажатием правой кнопки мыши. Задайте каскадную модификацию для базы данных Студенты. Связь между базами данных существует лишь до конца текущего сеанса работы с FoxPro. Для связывания в начале каждого сеанса работы сохраните в отдельном файле последовательность команд связывания баз данных из окна команд (Command). Для этого выделите нужные директивы в окне команд и скопируйте их в буфер (Edit/Copy). Затем откройте новый файл для программы (File/New/Program) и вставьте туда выделенный блок (Edit/Paste). Сохраните файл.
