Сохраняем изменения (называем таблицу именем «Книги») и закрываем окно редактирования.
Теперь, если мы посмотрим в главное окно базы данных, мы увидим, что в правом нижнем разделе Таблицы появилась наша таблица «Книги» (Рисунок 18).
Рисунок 18
Рисунок 19
Вторую таблицу создаем аналогичным способом (Создаем структуру таблицы с использованием Создать таблицу в режиме дизайна, добавляем новые записи). В результат отображен на Рисунке 20.
Рисунок 20
Составление структуры таблицы «Издательства»
После того, как все таблицы созданы, приступаем к созданию связей.
Чтобы приступить к созданию связей выберите пункт меню Сервис – Связи (Рисунок 3).
Рисунок 3
Выбрав пункт связи, мы увидим диалог добавления таблиц (Рисунок 4).
Рисунок 4
Необходимо добавить сюда таблицы, которые связаны с другими таблицами. А для наглядности лучше добавить все таблицы данной базы данных.
Есть два варианта создания связи:
Выбираем пункт меню Вставка — Создать связь. Появляется модальный диалог (Рисунок 5).
Рисунок 5
В нем мы осуществляем все необходимые настройки и в результате получаем отображение всех таблиц и связей между ними. Данные таблицы связаны у нас полем «Название издательства».
Такого же эффекта можно добиться следующим образом:
Щелкните имя поля в таблице (например, имя поля "название издательства" из таблицы книг), удерживая кнопку мыши, и перетащите имя поля на имя поля другой таблицы ("название издательства" из таблицы издательств). Если отпустить кнопку мыши, появляется линия, соединяющая эти два поля в двух окнах.
Чтобы удалить связь между двумя таблицами, щелкните соединительную линию и нажмите клавишу DELETE, или выделите соединительный вектор с помощью клавиши TAB, вызовите контекстное меню, нажав клавиши SHIFT+F10, и выберите команду Удалить.
Теперь можем приступить к созданию запросов.
Для начала создадим запрос сортировки данных по таблице «книги». Чтобы создать запрос, щелкните значок Запросы в документе базы данных, а затем щелкните Создать запрос в режиме дизайна.
Определение запроса выполняется в нижней области окна. Чтобы определить запрос, укажите имена полей базы данных, которые требуется включить, а также условия отображения полей. Чтобы переупорядочить столбцы в нижней области конструктора, перетащите заголовок столбца в новое расположение или выберите столбец и нажмите CTRL и клавишу со стрелкой. Создадим запрос, который будет выводить количество книг, в библиотеке (Рисунок 21).
Заходим в режим дизайна запросов и добавляем туда таблицу «книги», после чего выбираем интересующие нас поля и ставим сортировку по возрастанию для поля «название» (Рисунок 21)
Рисунок 21
Закройте окно создания запросов. Чтобы проверить запрос, дважды щелкните его имя в документе базы данных. Результат запроса отобразится в таблице, аналогичной представлению источника данных, также результаты запроса можно посмотреть, не выходя из режима дизайна, для этого нужно выбрать пункт меню Вид — Вид или просто нажать клавишу F4.
Результаты данного запроса показаны на Рисунке 22.
Рисунок 22
Для того чтобы знать сколько различных наименований книг хранится в библиотеке создадим следующий запрос. В режиме дизайна запросов (аналогично предыдущему запросу) добавляем таблицу «книги», для подсчета книг можно воспользоваться полем «номер книги». Выбираем это поле, пишем псевдоним «количество наименований книг» и выбираем функцию счетчик (Count) (Рисунок 23)
Рисунок 23
Псевдоним несет смысловую нагрузку.
Далее можно создать форму, формы могут создаваться на основе таблиц или на основе запросов. Мы создадим форму, которая будет отображать все данные о книге с возможностью их добавления.
Для создания новой формы в OpenOffice.org base можно использовать Мастер форм:
1. Если файл базы данных, в котором нужно создать новую форму, не открыт, то откройте его.
2. В левой области окна базы данных щелкните значок Формы.
3. Установите флажок Использовать мастер для создания формы.
Открываем Мастер форм и приступаем к выполнению шагов.
Шаг 1. Помещаем в форму все поля таблицы «книги» (Рисунок 25)
Рисунок 25
Шаг 2. Выбираем добавление субформы (Рисунок 26)
Рисунок 26
Шаг 3. Выбираем поля для субформы (это будут поля «адрес» и «главный редактор» таблицы «издательства»).
Шаг 4. На этом шаге не меняем ничего (Рисунок 28).
Рисунок 28
Шаг 5. Выбираем расположение элементов на форме. В данном случае столбцы подписи располагаются слева и на основной форме и на субформе (Рисунок 29).
Рисунок 29
Шаг 6. Здесь задаем условие, что в форме будут отображены все данные, но их нельзя изменять и удалять, можно только добавлять новые данные (Рисунок 30).
Рисунок 30
Шаг 7. Выбираем оформление формы. Мы выбрали светло-синий фон и трехмерный вид поля.
Шаг 8. На заключительном шаге задаем имя формы как «информация о книгах» и отмечает, что после заполнения формы хотим с ней работать (Рисунок 32).
Рисунок 32
После завершения последнего шага жмем кнопку «Готово», на этом создание формы закончено.
Для создания отчета, выбираем мастер отчетов.
Для создания нового отчета в OpenOffice.org BASEнеобходимо выполнить следующую последовательность действий:
1. Откройте файл базы данных, в которой необходимо создать новый отчет, если он у Вас не открыт.
2. В левой области окна базы данных щелкните значок Отчеты.
3. Выберите задачу «Использовать мастер для создания отчета».
Использование и изменение отчетов баз данных.
Выбор полей.
Указывается таблица или запрос, для которого создается отчет, и поля, которые нужно включить в отчет.
В данном случае сделаем отчет по количеству наименований. Поэтому выбираем второй созданный Вами запрос, добавляем поле «Количество наименований».
Указывается, что будут обозначать поля.
Группировка.
Записи отчета можно группировать на основе значений одного или нескольких полей. Выберите поля, по которым будет сгруппирован итоговый отчет. В отчете можно группировать до четырех полей. При группировке нескольких полей OpenOffice.org base создает вложенные группы согласно их уровню группировки.
Параметры сортировки.
Выберите поля, по которым требуется сортировать отчет. Поля можно сортировать по четырем уровням, на каждом — по возрастанию или по убыванию. Сгруппированные поля можно сортировать только внутри соответствующих групп.
Выберите разметку из разных шаблонов и стилей и ориентацию страницы (книжную или альбомную).
Отчет можно создать как статический или как динамический отчет. При открытии динамического отчета он отображается с текущим содержимым. При открытии статического отчета всегда отображаются те данные, которые содержались в этом документе в момент его создания.
Отчеты, построенные на основе таблиц, будут статическими, то есть будут отображать только ту информацию, которая содержалась в таблице во время их создания. Для создания отчета, который каждый раз будет предоставлять полную информацию нужно построить его на основе запроса. На Рисунке 33 приведен пример отчета.
Рисунок 33
На этом создание элементарной базы данных «библиотека» закончено. Естественно, эта база является лишь «пробой пера», но она также является основой, опираясь на которую можно построить более функциональную базу данных.
1. Создайте с помощью Мастера таблицу, содержащую поля: Код Адреса, Фамилия, Имя, Телефон, Страна. При создании таблицы с помощью Мастера предлагается более 40 образцов таблиц, предназначенных для использования в личных или деловых целях, каждая из которых содержит соответствующий набор полей. Остается выбрать образцы полей, после чего Мастер автоматически создает таблицу.
2. В таблицу, созданную при выполнении предыдущего задания, добавьте в режиме дизайна поле Год рождения.
3. Добавьте произвольные данные в количестве 10 записей.
3. В таблице, созданной при выполнении второго задания, отсортируйте фамилии по алфавиту.
4. Уметь объяснить процесс выполнения предложенных в лабораторной работе заданий.
Вам предлагается ответить на следующие вопросы письменно. Разрешается пользоваться данным пособием и справочной системой OpenOffice.Org. Лист с ответами предъявить преподавателю.
1. Что такое база данных?
2. Можно ли утверждать, что совокупность пустых таблиц является также базой данных?
3. Что такое таблицы?
4. Что такое запросы?
5. Что такое формы и какое их назначение?
6. Что такое отчеты? Какие виды отчетов существуют в OpenOffice.OrgBASE?