Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Тема: Создание базы данных. Ввод данных в таблицу. Создание форм.
Постановка задачи
Перед созданием реляционной базы данных Access пользователь должен спланировать очень подробно, из каких таблиц должна состоять база данных, какие данные автоматизируемой предметной области нужно поместить в каждую таблицу, как связать таблицы.
Пусть необходимо построить базу данных, содержащую информацию об учебном процессе текущего семестра:
Создание файла базы данных
Прежде, чем приступить к созданию таблицы базы данных, необходимо создать файл пустой базы данных.
После запуска Microsoft Access одновременно с его окном выводится первое диалоговое окно, позволяющее начать создание базы данных или открыть существующую базу данных.
Это окно появляется, если в окне Сервис\Параметры\Вид\Отображать установлен флажок Окно запуска.
Упражнение 1. Алгоритм создания файла новой базы данных.
Оставьте в поле тип файла значение по умолчанию база данных Microsoft Access (*.mdb).
Создание таблицы базы данных
Создание таблицы базы данных состоит из двух этапов. На первом этапе определяется ее структура: состав полей, их имена, тип данных каждого поля, размер поля, ключи, индексы таблицы и другие свойства полей. На втором этапе производится создание записей таблицы и заполнение их данными.
1 Этап: Создание структуры таблицы
Access предоставляет несколько способов создания таблицы:
Наиболее полно использовать все возможности системы позволяет Конструктор таблиц, с помощью которого можно в диалоговом режиме определить структуру таблицы и установить параметры всех ее элементов.
Упражнение 2. Создание таблицы в режиме Конструктора.
Создаем таблицу ГРУППА, начнем с определения ее структуры в режиме Конструктора таблиц.
В окне Конструктора таблиц надо ввести имена полей таблицы и выбирать их типы. На вкладке Общие надо изменить их характеристики (свойства) в соответствии с нижеследующей таблицей.
Описание свойства полей таблицы ГРУППА
Имя поля |
Тип данных |
Ключевое поле |
Размер, байт |
Число десятичных знаков |
Подпись |
Условие на значение |
Индексированное поле |
Обязательное поле |
Формат |
Сообщение об ошибке |
|||||||
НГ |
текстовый |
Да (установить перед сохранением таблицы) |
3 |
Номер группы |
Да (сов. не допус.) |
Да |
||
кол |
числовой |
байт |
Кол-во студентов в группе |
>=0 and <=35 |
нет |
нет |
||
Кол-во студентов больше допустимого |
||||||||
Проходной балл |
числовой |
С пл.точкой (4 байта) |
2 |
Проходной балл |
>2 and <5 or 0 |
нет |
нет |
|
фиксированный |
Ошибка в оценке |
Упражнение 3. Ввод записей.
2 Этап: Ввод записей
Ввод записей выполняется в режиме работы с таблицами. Переход к табличному представлению базы данных осуществляется с помощью кнопки Режим таблицы панели инструментов или отметьте таблицу и нажмите кнопку Открыть.
Введите записи в таблицы в соответствии с их полями.
Данные таблицы ГРУППА
Номер группы |
Кол-во студентов в группе |
Проходной балл |
101 |
30 |
4,50 |
102 |
32 |
4,50 |
103 |
29 |
4,80 |
104 |
25 |
4,40 |
105 |
24 |
4,20 |
201 |
25 |
3,90 |
202 |
24 |
4,00 |
203 |
23 |
3,90 |
204 |
24 |
4,70 |
205 |
24 |
4,20 |
Остальные таблицы и данные к ним даны в Приложении.
Когда нужно установить несколько ключевых полей, их нужно выделить, удерживая клавишу Ctrl и нажать на кнопку панели инструментов Ключевое поле (картинка ключа).
Связывание таблиц
Access позволяет строить реляционные базы данных, отдельные таблицы которых могут быть связаны между собой. Это позволит автоматически выбирать связанные данные из нескольких таблиц, в отчетах, запросах и формах. При определении связи ключ в одной таблице содержит ссылки на конкретные записи в другой таблице. Ключ, на который имеется ссылка в другой таблице, называю внешним ключом.
Установление связи между таблицами возможно только при следующих условиях:
От полей, указанных при определении связи, зависит тип создаваемой связи:
Если для какой-то таблицы не было определено ключевое поле, то в поле Тип отношении отображается текст «Не определено».
Упражнение 4. Связывание таблиц.
КАФЕДРА ПРЕПОДАВАТЕЛЬ (ключ ККАФ)
ПРЕДМЕТ ИЗУЧЕНИЕ (ключ КП)
ПРЕПОДАВАТЕЛЬ ИЗУЧЕНИ (ключ ТАБН)
ГРУППА ИЗУЧЕНИЕ (ключ НГ)
СТУДЕНТ УСПЕВАЕМОСТЬ (ключи НГ и НС)
ИЗУЧЕНИЕ УСПЕВАЕМОСТЬ (ключи НГ, КП, ТАБН, ВИДЗ)
Упражнение 5. Создание форм.
Форму можно создать тремя способами:
Каждую Access-форму можно представить на экране в одном из 3-х режимов:
Переключение между режимами осуществляется с помощью команды Вид.
Задание.
Конструирование формы
Для конструирования форм в Access используется Конструктор форм. Форма в этом режиме имеет 3 области:
Которые могут быть образованы по команде Вид\ Заголвок\ Примечание формы.
Упражнение 6. Редактирование формы в режиме Конструктора
перехода *. Добавленную запись можно проверить в таблице ПРЕДМЕТ. Форма будет иметь следующий вид.
Лабораторная работа № 10. Создание запросов и отчетов.
Упражнение 1. Проектирование запросов
Запросы предназначены для отбора данных, удовлетворяющих заданным критериям. Запрос это объект базы данных, допускающий многократное использование. Результат запроса набор записей представленных в табличном виде, который можно изменять, добавлять и удалять. В нем отображаются также записи, добавляемые, удаляемые и изменяемые в исходных таблицах. Сами запросы могут служить, наряду с таблицами, источниками записей для всех объектов базы данных.
Microsoft Access позволяет выполнять следующие типы запросов:
В учебных целях запросы лучше готовить в ручную, с помощью Конструктора. Он открывает бланк запроса по образцу, состоящий из двух областей. В верхней области отображается структура таблицы, к которым запрос адресован, а нижняя область разбита на столбцы по одному столбцу на каждое поле будущей результирующей таблицы.
Задания.
Создайте запрос, который проверит правильность задания общих часов в таблице ПРЕДМЕТ. По запросу должны отбираться только те записи, в которых значение в поле ЧАСЫ не равно значению, получаемому при сложении значений полей ПР и ЛЕК. Для этого:
Упражнение 2.
Определите фактическое число студентов и подсчитайте средний проходной балл в группе.
Упражнение 3. Технология конструирования многотабличного запроса
Пусть необходимо получить информацию об оценках, полученных студентами по всем предметам.
Упражннеие 4. Построение запроса на основе других запросов
Некоторые задачи иногда требуют последовательного выполнения нескольких запросов. Например, для определения средней нагрузки преподавателей кафедры необходимо посчитать число преподавателей кафедры, затем общее количество часов занятий, проводимых кафедрой и завершить решение задачи расчетом средней нагрузки преподавателя.
1. Создайте запрос на выборку, в котором по таблице ПРЕПОДАВАТЕЛЬ с помощью функции Count подсчитывается число преподавателей на каждой кафедре. Сохраните запрос под именем ЧИСЛО ПРЕПОДАВАТЕЛЕЙ КАФЕДРЫ.
2. Для подсчета общего числа часов занятий, проводимых каждой кафедрой, создайте запрос на базе таблиц ПРЕПОДАВАТЕЛЬ и ИЗУЧЕНИЕ.
3. Сохраните запрос под именем ЧАСЫ КАФЕДРЫ и выполните.
4. Для окончательного решения задачи необходимо на базе двух предыдущих запросов подготовить третий запрос с вычисляемым полем.
5. Создайте запрос в Режиме конструктора. В окне Добавление таблицы откройте вкладку Таблицы и запросы и выберите таблицу КАФЕДРА и два предыдущих запроса.
6. В строку Поле из таблицы КАФЕДРА переносите поля ККАФ и НКАФ, а из запросов соответственно Count_ТАБН и Sum_ЧАСЫ. Таблица КАФЕДРА включена в запрос для дополнения кода кафедры ее наименованием.
7. Для создания вычисляемого поля, рассчитывающего среднюю нагрузку преподавателя, введите выражение [Sum_ЧАСЫ]/[Count_ТАБН]. Для этого в строке Поле пустого столбца с помощью контекстно-зависимого меню вызовите Построитель вырожения, выбрав меню Построить. В левой части окна Построителя выражения в папке Запросы выберите соответствующие запросы. Справа отобразится список полей. Последовательно выбирая нужные поля, нажимая кнопку Вставить и вставляя знаки операции, сформируйте необходимые выражение в верхней части окна, Ok.
8. Для изменения в таблице результата подписи Выражение1, формируемый по умолчанию, выделите столбец этого поля в бланке запроса и вызовите через контекстное меню Свойства
9. Задайте в Подпись поля значение Средняя нагрузка преподавателя, в Формат поля Фиксированный и в Число десятичных знаков 0
10. Сохраните запрос под именем НАГРУЗКА ПО КАФЕДРАМ
Упражнение 5. Запрос на создание таблицы
Сконструируйте запрос на создание таблицы на запросе ЧИСЛО СТУДЕНТОВ и СРЕДНИЙ БАЛЛ ГРУППЫ.
Упражнение 6. Запрос на обновление
Используя запрос на обновление, пользователь может изменить группу записей, отобранную на основе определенных критериев.
Рассмотрите технологию фомирования на примере обновления поля КОЛ таблицы ГРУППА.
Упражнение 7. Перекрестный запрос
Перекрестные запросы позволяют компактно отображать отобранные данные и объединять однородную информацию. В такой таблице левый столбец образует заголовки строк из значений одного поля, верхняя строка образует заголовки столбцов из значений другого поля, а на пересечении строк и столбцов размещаются итоговые значения, вычисленные по значениям третьего поля. Для получения итоговых значений записи группируются по полям, используемым в качестве заголовков строк и тсолбцов, и для значений третьего поля в полученных группах записей применяется одна из выранных статистических функций.
Задание.
Пусть необходимо для каждого преподавателя определить число студентов, зннаия которых он оценил. Фамилии преподавателей можно получить из таблицы ПРЕПОДАВАТЕЛЬ, которая находится в отношениях «один-ко-многим» с таблицей УСПЕВАЕМОСТЬ. Поскольку с помощью мастера невозможно построить перекрестный запрос из нескольких таблиц, то необходимо сначала создать запрос на выборку для таблиц УСПЕВАЕМОСТЬ и ПРЕПОДАВАТЕЛЬ.
Упражннеие 8. Многотабличный перекрестный запрос
В отличие от мастера Конструктор позволяет создать многотабличный перекрестный запрос. Создайте запрос, в котором заголовками строк будут фамилии преподавателей, заголовками столбцов наименование предметов, а на пересечении строк и стольцов сумма часов.
Упражннеие 9. Создание отчета
Отчет создается в тех случаях, когда необходимо наглядно представить на экране или на бумаге сводную информацию, хранящуюся в базе данных. Его можно создавать с помощью мастера или в Режиме конструктора отчетов. Отчет, созданный мастером, можно допаботать в Режиме конструктора.
Создаем отчет на примере получения списков студентов по группам.
Создаем Отчет с помощью Мастера, а затем откорректируем в Режиме конструктора.
Упражннеие 10. Редактирование отчета
Для редактирования отчета перейдите в Режим конструктора.
ПРИЛОЖЕНИЯ
Описание свойств полей таблицы СТУДЕНТ
Имя поля |
Тип данных |
Ключевое поле |
размер |
Число десят.знаков |
подпись |
Индекс. поле |
Обяз.поле |
НГ |
текстовый |
Да |
3 |
Группа |
Да, совп. допуск. |
да |
|
НС |
текстовый |
да |
2 |
Номер студента в группе |
Да, совп. допуск |
да |
|
ФИО |
текстовый |
15 |
Фио |
Нет |
да |
||
ГодР |
числовой |
Целое |
Год рождения |
Нет |
да |
||
Адрес |
текстовый |
25 |
Адрес |
Нет |
да |
||
Пбалл |
числовой |
С пл.точкой (4) |
2 |
Проходной балл |
нет |
да |
Описание свойств полей таблицы КАФЕДРА
Имя поля |
Тип данных |
Ключевое поле |
размер |
Число десят.знаков |
подпись |
Индекс. поле |
Обяз.поле |
ККАФ |
текстовый |
Да |
2 |
Код |
Да, совп. не допуск. |
да |
|
НКАФ |
текстовый |
15 |
Название |
нет |
Нет |
||
ТЕЛ |
текстовый |
9 |
Нет |
Нет |
|||
ЗАВ |
текстовый |
15 |
ФИО зав.кафедрой |
Нет |
нет |
||
ФОТО |
Поле объекта OLE |
Фотография заведующего |
нет |
Описание свойств полей таблицы ПРЕПОДАВАТЕЛЬ
Имя поля |
Тип данных |
Ключевое поле |
размер |
Число десят.знаков |
подпись |
Индекс. поле |
Обяз.поле |
ТАБН |
текстовый |
Да |
4 |
Таб.номер |
Да, совп. не допуск. |
да |
|
ФИО |
текстовый |
30 |
ФИО преподавателя |
нет |
Да |
||
СТ |
текстовый |
15 |
Ученая степень |
Нет |
Нет |
||
ЗВ |
текстовый |
10 |
Ученое звание |
Нет |
нет |
||
ККАФ |
текстовый |
2 |
Код кафедры |
Нет |
да |
Описание свойств полей таблицы ПРЕДМЕТ
Имя поля |
Тип данных |
Ключевое поле |
размер |
подпись |
Условие на значение |
Сообщение об ошибке |
Индекс. поле |
Обяз.поле |
КП |
текстовый |
Да |
2 |
Код предмета |
Да, совп. не допуск. |
да |
||
НП |
текстовый |
15 |
Название предмета |
нет |
Нет |
|||
ЧАСЫ |
текстовый |
Целое |
Всего часов |
>0 and <=300 |
Кол-во часов должно быть >0 и <300 |
Нет |
Нет |
|
ЛЕК |
Числовой |
Целое |
Лекции |
Нет |
нет |
|||
ПР |
Числовой |
Целое |
Практика |
Нет |
Нет |
|||
ЧС |
Числовой |
целое |
Семестров |
Нет |
Нет |
|||
ПРОГ |
Поле МЕМО |
Программа |
нет |
Описание свойств полей таблицы ИЗУЧЕИЕ
Имя поля |
Тип данных |
Ключевое поле |
размер |
Число десят.знаков |
подпись |
Индекс. поле |
Обяз.поле |
НГ |
текстовый |
Да |
Номер группы |
Да, совп. допуск. |
да |
||
КП |
текстовый |
Да |
2 |
Код предмета |
Да, совп. допуск. |
Да |
|
ТАБН |
текстовый |
Да |
4 |
Таб.номер преподавателя |
Да, совп. допуск. |
Да |
|
ВИДЗ |
текстовый |
Да |
3 |
Вид занятия |
Да, совп. допуск. |
да |
|
ЧАСЫ |
числовой |
Целое |
Нет |
||||
СБАЛЛ ГР |
числовой |
С пл.точкой (8 байт) |
Средний балл по предмету |
нет |
Описание свойств полей таблицы УСПЕВАЕМОСТЬ
Имя поля |
Тип данных |
Ключевое поле |
размер |
Число десят.знаков |
подпись |
Индекс. поле |
Обяз.поле |
НГ |
текстовый |
Да |
3 |
Номер группы |
Да, совп. допуск. |
да |
|
НС |
текстовый |
Да |
2 |
Номер студента |
Да, совп. допуск. |
Да |
|
КП |
текстовый |
Да |
2 |
Код предмета |
Да, совп. допуск. |
Да |
|
ТАБН |
текстовый |
Да |
4 |
Таб.номер преподавателя |
Да, совп. допуск. |
Да |
|
ВИДЗ |
текстовый |
Да |
3 |
Вид занятия |
Да, совп. допуск. |
Да |
|
ОЦЕНКА |
Числовой |
целое |
нет |
Данные таблицы СТУДЕНТ
группа |
Номер студента в группе |
фио |
Год рождения |
адрес |
Проходной балл |
101 |
01 |
Аппаз Д. |
1984 |
г.Усть-Каменогорск |
4,25 |
101 |
02 |
Жанабаев Е. |
1984 |
г.Тараз |
4,5 |
101 |
03 |
Жанабаев М. |
1983 |
г.Кызыл-Орда |
4,25 |
101 |
04 |
Ибраимханова Т. |
1984 |
г.Алматы |
4,75 |
102 |
01 |
Измурат А. |
1984 |
г.Алматы |
4,7 |
102 |
02 |
Кайнаров А. |
1985 |
г.Семей |
4,8 |
102 |
03 |
Капсалямов А. |
1985 |
г.Астана |
4,7 |
103 |
01 |
Нурсапаева Г. |
1985 |
г.Астана |
4,5 |
103 |
02 |
Нышанбаева А. |
1984 |
г.Алматы |
4,75 |
104 |
01 |
Турсынбаев Е. |
1983 |
г.Алматы |
4,25 |
Данные таблийы КАФЕДРА
код |
Название кафедры |
тел |
ФИО зав.кафедрой |
Фотография заведующего |
01 |
ЭК и КТ |
21-01-72 |
Длимбетов Б.К. |
|
02 |
Математика |
29-01-01 |
Тунгатаров К.М. |
|
03 |
Истории |
21-01-01 |
Берденова К.А. |
|
04 |
Иностранного яз |
22-01-01 |
Жданова А.П. |
|
05 |
Физкультуры |
21-02-02 |
Ентальцев А.Л. |
|
06 |
Философии |
21-03-03 |
Искужинова Б.Г. |
Данные таблицы ПРЕПОДАВАТЕЛЬ
таб.номер |
фио преподавателя |
ученая степень |
ученое звание |
код кафедров |
101 |
Цхай С.М. |
Доктор эк.наук |
профессор |
01 |
102 |
Длимбетов Б.К. |
Канд.техн.наук |
доцент |
01 |
103 |
Аренбаев Ж.Г. |
Канд.экон.наук |
доцент |
01 |
104 |
Уандыкова М.К. |
Канд.экон.наук |
доцент |
01 |
201 |
Сатыбалдиев О. |
Доктор.мат.наук |
профессор |
02 |
202 |
Искакова А.М. |
Канд.мат.наук |
доцент |
02 |
301 |
Кришошеева И.Т. |
Канд.истор.наук |
доцент |
03 |
302 |
Берденова К.А. |
Доктор.ист.наук |
профессор |
03 |
303 |
Кощегулова К.И. |
Канд.фил.наук |
Ст.преп |
03 |
401 |
Егорова А.Т. |
Канд.фил.наук |
Ст.преп |
04 |
402 |
Ермолин Е.Н. |
преп. |
04 |
|
501 |
Ентальцев А.Л. |
Канд.пед.наук |
Доцент |
05 |
502 |
Нагай Б.Г. |
Ст.преп |
05 |
|
601 |
Искужинова Б.Г |
Доктор фил.наук |
Профессор |
06 |
Данные таблицы ПРЕДМЕТ
Код предмета |
Название предмета |
Всего часов |
лекции |
Практика |
семестров |
программа |
01 |
информатика |
200 |
80 |
120 |
4 |
Программа курса «экономическая информатика и информационные технологии» |
02 |
Матеметика |
200 |
100 |
100 |
4 |
|
03 |
История |
140 |
90 |
50 |
3 |
|
04 |
Иностранный язык |
200 |
0 |
200 |
4 |
|
06 |
Философия |
100 |
40 |
60 |
2 |
|
05 |
физкультура |
100 |
0 |
100 |
2 |
Данные таблицы ИЗУЧЕНИИЕ
номер группы |
код предмета |
Таб. номер преподавателя |
вид занятий |
часы |
Средний балл по предмету |
101 |
01 |
101 |
лек |
20 |
0 |
101 |
01 |
102 |
пр |
30 |
0 |
101 |
02 |
201 |
лек |
30 |
0 |
101 |
02 |
202 |
пр |
30 |
0 |
101 |
03 |
301 |
лек |
30 |
0 |
101 |
03 |
302 |
пр |
16 |
0 |
101 |
04 |
401 |
пр |
50 |
0 |
101 |
06 |
601 |
лек |
20 |
0 |
101 |
06 |
601 |
пр |
30 |
0 |
101 |
05 |
501 |
пр |
50 |
0 |
102 |
01 |
101 |
лек |
20 |
0 |
102 |
01 |
103 |
пр |
30 |
0 |
102 |
04 |
402 |
пр |
50 |
0 |
105 |
01 |
103 |
лек |
20 |
0 |
201 |
01 |
104 |
пр |
36 |
0 |
201 |
02 |
202 |
пр |
20 |
0 |
202 |
04 |
402 |
пр |
50 |
0 |
203 |
01 |
104 |
лек |
20 |
0 |
204 |
05 |
502 |
пр |
50 |
0 |
Данные таблицы УСПЕВАЕМОСТЬ
номер группы |
ном. студента |
код предмета |
таб. номер преподавателя |
Вид занятия |
оценка |
101 |
01 |
01 |
101 |
лек |
5 |
101 |
01 |
03 |
302 |
пр |
4 |
101 |
02 |
01 |
101 |
лек |
5 |
101 |
02 |
03 |
302 |
пр |
3 |
101 |
03 |
01 |
101 |
лек |
4 |
101 |
03 |
03 |
302 |
пр |
5 |
101 |
04 |
01 |
101 |
лек |
3 |
101 |
04 |
03 |
302 |
пр |
4 |