Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Использование формы для просмотра данных




Создание форм. Ввод данных в таблицы БД

Установление связей между таблицами

Создание таблицы в режиме дизайна

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

• создание таблицы в режиме дизайна;

• использовать мастер для создания таблицы:

•создать представление.

Рассмотрим, как создаются таблицы в режиме дизайна, так как это наиболее полныйи часто используемый способ создания таблиц.

Итак, выберем команду Создание таблицы в режиме дизайна. Откроется окно, изображенное на рис. 4. Теперь, используя Конструктор таблиц, можно создать поля для таблицы. Создадим таблицу «Студент», см. табл. 1 на стр. 3:

1. Введите в строку столбца Название… имя первого поля Код студента.

2. В следующей ячейке справа определите Тип поля. Щелкнув в этой ячейке, выберите из списка тип данных – Целое [INTEGER];измените параметры Свойства поля: обязательное поле – да, остальные параметры оставьте по умолчанию;

3. Задайте первичный ключ для поля Код студента. Для этого щелкните правой кнопкой мыши в ячейке слева от поля Код студента и выберите в контекстном меню команду Первичный ключ. В ячейке слева от поля Код студента появится изображение ключа

Для определения всех остальных полей таблицы Студент выполните действия, аналогичные указанным в п.п. 1 и 2, в соответствии с табл. 1. После заполнения ваша таблица будет выглядеть как на рис. 4.

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

4. Щелкните кнопку «Сохранить» на панели инструментов, в диалоговом окне Сохранить как наберите вместо Таблица1 имя таблицы Студент.

Рис. 4. Структура таблицы Студент

5. Закройте окно конструктора таблиц. Таблица Студент появится в списке объектов данного типа на вкладке Таблицы в главном окне БД.

Структуры других таблиц БД создаются аналогичным образом.

 

Задание 1. Создайте в БД Сессия структуры таблиц Дисциплина и Экзамен, см. табл. 2 и табл. 3 на стр. 4.

Указание. При сохранении таблицы Экзамен на экран будет выведено сообщение о том, что первичный ключ не задан и программа запросит подтверждение для его создания. Ответьте «Да» и автоматически будет создан первичный ключ со стандартным названием ID.

Сравните результаты работы с конечным видом структуры таблиц Дисциплина и Экзамен, приведенных на рис. 5, 6.

 

 

Рис. 5. Структура таблицы Дисциплина

Рис. 6. Структура таблицы Экзамен

После создания всех таблиц Главное окно БД будет выглядеть следующим образом (рис. 7):

Рис. 7. Главное окно БД после создания всех таблиц

 

 

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

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

Между двумя таблицами можно установить один из следующих типов связей:

1. один к одному (1:1) — когда одной записи в первичной таблице соответствует только одна запись в связанной таблицы;

2. один ко многим (1:М) — когда одна запись в первичной таблице связана с множеством записей в связанной таблицы и наоборот;

3. многие ко многим (М:М) — предусматривает, что множество записей одной таблицы может соответствовать множеству записей другой таблицы и наоборот.

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

Шаг 1. Находясь в Главном окне БД выполните команду Сервис > Связи. Откроется пустое окно Конструктора связей, поверх которого будет открыто окно выбора таблиц БД, которые мы можем связать, рис. 8. На рис.8 при открытии окна Конструктора связей пока отсутствуют таблицы Студент, Экзамен, Дисциплина.

Шаг 2. Поочередно выделите в окне Добавить таблицы имена таблиц Студент, Экзамен, Дисциплина и каждый раз нажимайте кнопку «Добавить». В окне Конструктора связей добавились три таблицы, рис. 8. Закройте окно Добавить таблицы.

Рис. 8. Окно конструктора связей с окном добавления таблиц

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

После отпускания кнопки мыши между таблицами появится линия связи с автоматически установленным типом связи (в данном случае 1:М), см. рис. 9.

Шаг 4. Аналогично создайте связь между полем Код дисциплины в таблице Дисциплина и полем Код дисциплины в таблице Экзамен, см. рис. 9.

Рис. 9. Схема связей БД Сессия

Шаг 5. После установления связи между таблицами Дисциплина и Экзамен следует установить параметры связи. Выделите правой кнопкой мыши установленную связь и выполните в контекстном меню команду Правка. Откроется окно свойств выбранной связи, в котором установите флажки в свойствах Обновление каскада и Удалить каскад, рис. 10.

Рис. 10. Окно свойств связи

Задание обновления каскада связанных полей и удаления каскада связанных полей позволит редактировать записи только в таблице Дисциплина, а в таблице Экзамен эти действия со связанными записями будут выполняться автоматически. Например, если вы удалите из таблицы Дисциплина один предмет, то в таблице Экзамен удалятся все записи, связанные с этим предметом. При изменении (обновлении) данных в таблице Дисциплина автоматически изменяются значения связанного поля для соответствующих записей таблицы Экзамен.

Шаг 6. Аналогично установите параметры связи между таблицами Студент и Экзамен.

Шаг 7. Закройте окно конструктора связей, нажав на кнопку «Да» на вопрос о сохранении схемы связей.

 

 

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

Форма, которая основана на одном объекте, называется простой формой. Форма, основанная на полях из нескольких связанных таблиц, называется сложной и представляет собой композицию из нескольких форм.

 

4.1. Создание формы для таблицы Студент

Создать форму для просмотра и заполнения таблиц можно двумя способами: с использованием Мастера построения форм и в режиме дизайна (ручного конструирования). Рассмотрим наиболее простой способ – создание формы с использованием Мастера.

Находясь в Главном окне БД выберите на панели вкладку Формы и щелкните по строке Использовать мастер для создания формы. На экране появится окно, изображенное на рис. 11.

Рис. 11. Окно мастера форм

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

Рис. 12. Выбор таблицы и полей для формы

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

Шаги 3, 4. Данные шаги необходимы для создания субформ, поэтому они автоматически пропускаются.

Шаг 5. В следующем окне, рис. 13, необходимо выбрать внешний вид формы. Возможны следующие варианты: столбцы – подписи слева; столбцы – подписи сверху; как лист данных; блоки – подписи сверху. Выберите вариант Столбцы – подписи слева. Нажмите кнопку «Дальше».

Рис. 13. Выбор внешнего вида формы

Шаг 6. На этом шаге, рис. 14, определяются цели создания формы и устанавливаются различные блокировки записей. Оставьте флажки без изменений и нажмите кнопку «Дальше».

Рис. 14. Установка режима источника данных

Шаг 7. На этом шаге, рис. 15, завершается оформление внешнего вида формы. Здесь вы можете выбрать ее фон и стиль обрамления полей. Переместив верхнее окно Мастера формы вниз, вы можете увидеть, как выглядит выбранный вами стиль на форме. Выбор стиля и просмотр результата можно повторять, пока не будет достигнут наилучший результат. Это относится также и к параметру Обрамление поля. Выберите стиль формы и нажмите кнопку «Дальше».

Рис. 15. Окно выбора стиля формы

Шаг 8. На последнем шаге, рис. 16, задается имя формы и выбирается, что вы будете с ней делать после окончания работы Мастера. Можно ввести новое имя или согласиться с предложенным Студент. Оставьте имя формы Студент. Так как будем вводить данные в таблицу, то выберите переключателем пункт Работа с формой. Нажмите кнопку «Готово».

Закройте созданную форму. В Главном окне БД на вкладке Формы появился значок формы Студент.

Рис. 16. Окно задания имени и действия

 

4.2. Ввод данных в таблицу Студент с использованием формы

С помощью созданной формы Студент заполните данными, приведенными в табл. 4, таблицу Студент.

Таблица 4. Данные для таблицы Студент

Код студента ФИО Пол Дата рождения Группа Адрес Телефон
  Петров И.А М 05.03.1993   Пушкина 7-81 24-18-15
  Ветров И.П. М 15.10.1992   Толстого 3-15 24-34-44
  Сидоров М.И. М 20.02.1992   Советская 7-27 31-10-09
  Попов Н.П. М 10.12.1990   Ленина 4-18 35-15-96
  Борисова С.Д. Ж 15.02.1993   Стаханова 6-71  
  Иванов И.И. М 04.08.1991   Советская 8-15 31-05-48
  Громова М.В. Ж 17.06.1993   Горького 18-4  
  Анохин А.И. М 06.06.1992   Пушкина 4-71 24-17-18
  Степанова Г.А Ж 15.07.1991   Советская 4-15 31-18-56
  Козлов С.П. М 25.01.1994   Гагарина 8-6 25-12-15

 

1. В Главном окне БД на вкладке Формы откройте форму Студент двойным щелчком на ее значке. На рис. 17 приведено окно формы Студент с примером заполнения первой записи.

2. Каждая запись, являясь отдельной строкой табл. 4, теперь представляет из себя как–бы отдельную карточку. Вводить данные удобно именно в таком режиме.

В нижней части окна формы отражено общее число записей и номер текущей записи.

Рис. 17. Окно формы Студент

Номер записи всегда будет соответствовать коду студента в табл. 4.

Активизируйте поле Код студента щелчком мыши и введите Код студента. Для переход к следующим полям формы используйте клавишу «Tab». Для перемещения в обратном направлении (к предыдущим полям) используйте клавиши «Shift+Tab».

Ведите данные первой записи. При нажатии клавиши «Tab» после ввода данных в последнее поле формы (поле Телефон) данная запись добавляется в таблицу БД, все поля очищаются и осуществляется переход к следующей записи.

3. Ведите все записи для таблицы Студент. После ввода данных последней записи нажмите кнопку «Сохранить запись» на панели Навигации формы, рис. 18.

Рис. 18. Панель Навигация формы

Обозначения на рис. 18:

1 – Найти запись; 2 – Номер записи; 3 – Первая запись; 4 – Предыдущая запись;
5 – Следующая запись; 6 – Последняя запись; 7 – Добавить запись: 8 – Сохранить запись; 9 – Отменить ввод данных; 10 – Удалить запись; 11 – Обновить;
12 – Сортировать; 13 – Быстрый фильтр; 14 – Применить фильтр; 15 – Фильтр;
16 – Удалить фильтр/сортировку; 17 – Исходные данные в виде таблицы.

5. Для представления формы в режиме таблицы нажмите кнопку «Исходные данные в виде таблицы» на панели Навигации формы, рис. 18. Просмотрите введенные данные. В режиме таблицы также можно вводить данные и редактировать их. Например, можно удалить запись, если выделить строку таблицы и нажать клавишу «Delete».

Повторное нажатие кнопки «Исходные данные в виде таблицы» возвращает представление данных в режиме формы. Просматривать и редактировать данные можно и в режиме формы, используя для навигации по записям соответствующие кнопки панели навигации.

 

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

1. Найти запись о студенте Иванове:

• в окне формы щелкните курсором в поле ФИО;

• нажмите кнопку «Найти запись»;

• в появившемся диалоговом окне, рис. 18, определите параметры поиска:

Рис. 19. Окно Поиск записи

– в строке Текст введите фамилию Иванов;

– в области параметров Область поиска укажите: в отдельном поле ФИО;

– в области параметров Настройки укажите: положение – где-либо в поле, применять формат поля;

• нажмите кнопку «Найти» и просмотрите на форме найденную запись (в случае необходимости окно Поиск записи можно сдвинуть);

• нажмите кнопку «Закрыть» для выхода из режима поиска.

2. Найдите записи, относящиеся к группе111:

• в окне формы щелкните курсором в поле Группа;

• нажмите кнопку «Быстрый фильтр» (автофильтр в OOo Calc);

• используя кнопку «Следующая запись», просмотрите отфильтрованные записи в форме;

• просмотреть отфильтрованные записи можно и в таблице, для чего нажмите кнопку «Исходные данные в виде таблицы»;

• вернитесь в режим формы, повторно нажав кнопку «Исходные данные в виде таблицы»;

• отмените фильтрацию записей, нажав кнопку «Удалить фильтр / сортировку.

3. Выполните сортировку записей по возрастанию дней рождения:

• в окне формы щелкните курсором в поле Дата рождения;

• нажмите кнопку «Сортировка по возрастанию»;

• просмотрите записи в форме – они будут отсортированы в соответствии с возрастанием значений в поле Дата рождения;

• отмените сортировку записей, нажав кнопку «Удалить фильтр / сортировку.

Закройте форму.

 

4.4. Просмотр данных в таблице Студент

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

Рис. 20. Таблица Студент БД Сессия

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

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

Рассмотрим пример использования фильтра по умолчанию (стандартный фильтр в OOoCalc). Данный фильтр может одновременно работать по трем полям и позволяет связывать условия поиска логическими функциями ANDи OR, рис. 21. Возможно также использование символов подстановки ‘?’ и ‘*’. Напомним, что символ подстановки ‘?’ заменяет любой один символ, а символов подстановки ‘*’ заменяет любую группу любых символов.

Рассмотрим особенности записи текста и дат в OOoBase. При написании условий с использованием дат необходимо дату ограничивать с двух сторон знаком «#», а текстовые данные заключать в апострофы, например, #01.01.2001# и ‘Информатика’. Апострофы из знаки # появляются автоматически при переходе в другое поле диалогового окна фильтра или нажатии клавиши «Enter». В условиях для текстовых полей нужно использовать слова «равно» или «не равно».

Найдем, например, в БД всех студентов, фамилии которых начинаются на “C” и родившихся в 1991–1992 годах. Нажмите на инструментальной панели кнопку «Фильтр по умолчанию». Соответствующий диалог настройки фильтра показан на рис. 21, а результат работы на рис. 22.

Рис. 21. Условия в фильтре по умолчанию

 

Рис. 22. Результат работы фильтра по умолчанию

После просмотра результата работы обязательно нажмите кнопку «Удалить фильтр/сортировку».

Закройте таблицу и выйдите в Главное окно БД.

Задание 2.

1. Найдите в БД Сессия всех студентов, в фамилиях которых вторая буква ‘о’ и родившихся в 1993 г.

2. Найдите в БД Сессия всех студентов, в фамилиях которых встречается сочетание ‘ро’ и родившихся в 1992г.

Задание 3. Создайте в БД Сессия форму для таблицы Дисциплина и заполните данными, приведенными в табл. 5, таблицу Дисциплина. Форме при закрытии присвоить имя Дисциплина.

 

Таблица 5. Данные для таблицы Дисциплина

Код дисциплины Название дисциплины
  Информатика
  Математика
  Физика

Задание 4. Создайте в БД Сессия форму для таблицы Экзамен и заполните денными, приведенными в табл. 6, таблицу Экзамен. Форме при закрытии присвоить имя Экзамен. Указание: при вводе данных с помощью формы Экзамен номер записи будет соответствовать номеру ID.

Таблица 6. Данные для таблицы Экзамен

ID Код студента Код дисциплины Балл ID Код студента Код дисциплины Балл
               
               
               
               
               
               
               
               
               
               
               
               
               
               
               

Выберите в Главном окне БД Сессия вкладку Таблица, откройте поочередно таблицы Дисциплина, Экзамен и просмотрите их. Выйдите в главное окно БД.

 




Поделиться с друзьями:


Дата добавления: 2014-12-23; Просмотров: 992; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.073 сек.