СОДЕРЖАНИЕ
1. ОБЩИЕ УКАЗАНИЯ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ... 3
2. ПЛАН ИЗУЧЕНИЯ ДИСЦИПЛИНЫ... 4
3. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ КОНТРОЛЬНОЙ РАБОТЫ... 6
3.1. Общие требования к выполнению контрольной работы.. 6
3.2. Задание на контрольную работу. 7
3.3. Пример выполнения задания контрольной работы.. 13
4. ВОПРОСЫ ДЛЯ САМОСТОЯТЕЛЬНОГО ИЗУЧЕНИЯ.. 30
5. РЕКОМЕНДОВАННАЯ ЛИТЕРАТУРА.. 31
1. ОБЩИЕ УКАЗАНИЯ ПО ИЗУЧЕНИЮ ДИСЦИПЛИНЫ
Целью обучения по дисциплине «Базы данных» является изучение теоретических основ и получение основных базовых знаний, получение навыков в области теоретического построения баз данных, обеспечения непротиворечивости и целостности данных, основных операций реляционной алгебры и её применение к построению и работе в системах данных, с практическими навыками по использованию СУБД ACCESS и языка SQL в работе.
В результате освоения дисциплины студенты должны:
|
|
иметь представление:
- о роли и месте знаний по дисциплине «Базы данных» при освоении смежных предметов по специальности в сфере общепрофессиональной деятельности;
знать:
- состав моделей данных;
- основные концепции проектирования и построения базы данных;
- языки манипулирования данными;
- архитектуры современных СУБД.
Уметь:
- строить информационную модель для конкретной задачи;
- подбирать наилучшую систему управления базами данных;
- проектировать прикладную программу.
Основными воспитательными целями являются:
- формирование у студентов трудолюбия и упорства в достижении цели;
- развитие способностей обоснованно защищать свою точку зрения, стремления к самостоятельному и творческому труду.
Программа предмета рассчитана на 78 часов аудиторного обучения. Из них 30 часов отводится на практическую часть изучения дисциплины. Для усиления контроля знаний студентов предусмотрена одна обязательная домашняя контрольная работа. Вариант контрольной работы совпадает с порядковым номером студента в журнале.
На первом занятии в лаборатории учащиеся должны быть ознакомлены с правилами проведения практических работ, и получить подробный инструктаж по технике безопасности.
После изучения дисциплины проводится итоговый экзамен.
|
|
2. ПЛАН ИЗУЧЕНИЯ ДИСЦИПЛИНЫ
№ темы | Наименование темы по программы | Краткое содержание занятия |
Введение | Роль и место дисциплины в сфере профессиональной деятельности | |
Раздел 1. Теория проектирования баз данных | ||
1.1 | Основные понятия и типы моделей данных | СУБД и ее место в системе программного обеспечения ЭВМ. Информационная модель данных, ее состав. Типы логических моделей |
1.2 | Этапы проектирования баз данных. Системы управления базами данных. | Требования, предъявляемые к БД. Определение сущностей и взаимосвязей. Первичный, альтернативный и внешний ключи. Характеристики различных СУБД |
1.3 | Взаимосвязи в моделях и реляционный поход к построению модели | Типы взаимосвязей в модели: «один к одному», «один ко многим», «многие ко многим». Реляционный подход к построению модели данных. Основные операции реляционной алгебры. |
1.4 | Нормализация баз данных | Понятие нормализации. Виды нормальных форм. Последовательность нормализации и ее значение. |
Практическая работа №1 по темам 1.1-1.4 | Проектирование структуры базы данных. Нормализация таблиц | |
Раздел 2. Организация баз данных в MS Access | ||
2.1 | Проектирование базы данных и создание таблиц | Назначение и структура файлов базы данных. Создание таблицы. Открытие, редактирование и модификация таблицы |
2.2 | Типы данных в Access | Текстовые, числовые, денежные поля. Поле MEMO. Поля логического типа. Использование масок вода и проверка значений. Поле OLE. |
Практическая работа №2 по теме 2.1-2.2 | Создание таблиц и ввод исходных данных | |
2.3 | Взаимосвязи между таблицами: установка и удаление. Типы ключей. Способы объединения таблиц | Понятие общего поля и его характеристики. Предварительные условия для установления взаимосвязи. Команды для установки и разрыва взаимосвязи. Объединение таблиц. |
Практическая работа №3 по теме 2.3 | Установление взаимосвязей между таблицами. | |
2.4 | Сортировка, поиск и фильтрация данных. Индексирование. | Понятие сортировки. Построение отсортированной таблицы. Методы поиска по любому полю и по полю индекса. Фильтрация. Понятие и виды индексных файлов. Понятие тега и индекса. Активация индекса. Переиндексирование: назначение и команда. |
Практическое занятие №4 по теме 2.4 | Поиск и фильтрация данных. Индексирование и сортировка таблиц | |
2.5 | Создание и использование форм. Модификация формы. | Мастер и конструктор форм. Модифицирование формы. Разделы формы. Многототабличные формы |
2.6 | Специальные элементы управления на форме. Размещение диаграмм | Специальные элементы управления. Создание списков и кнопок на форме. Переключатели. Порядок обхода полей. Автоформат. |
Практическое занятие №5 | Создание однотабличной формы | |
Практическая работа №6 | Создание многотабличной формы (с подчинением). Построение диаграмм | |
2.7 | Запрос. Классификация запросов | Классификация запросов. Мастер и конструктор запросов. |
2.8 | Многотабличные запросы | Многотабличные запросы. Использование мастера и конструктора для построения многотабличного запроса |
Практическая работа №7 | Создание простых и многотабличных запросов | |
2.9 | Сложные запросы на выборку | Использование выражений, Комбинирование условий с помощью логических операторов. Групповые операции и вычисления. Вычисляемые поля. Перекрестные запросы. |
Практическая работа №8 | Создание сложных запросов | |
2.10 | Автоматизация редактирования и управления данными | Общая информация о запросах на изменение. Запрос на создание таблицы, на изменение записей, на удаление, на обновление данных. |
2.11 | Отчеты, настройка и форматирование отчета | Виды отчетов. Способы формирования отчетов. Редактирование отчета. Отчеты с группировкой и сортировкой. Вывод отчетов на экран и печать. |
Практическая работа №9 | Создание отчета | |
2.12 | Макросы | Макросы: общие сведения. Создание макроса. Операции с макросами. Запуск макроса. Управление выполнением макроса. Отладка макросов. Макрос AutoExec. |
Практическая работа №10 | Создание и использование макросов | |
2.13 | Работа с внешними данными | Обмен данными с другими приложениями. Импорт и связывание данных и объектов БД. Экспорт данных и объектов БД Access. |
Практическая работа №11 | Создание главной кнопочной формы | |
Раздел 3. Организация запросов SQL | ||
3.1 | Основы SQL. Типы данных в SQL | Введение в SQL. Назначение и основные возможности. Типы данных в SQL. |
3.2 | Команды языка SQL | Команды на создание, изменение, удаление таблиц. Команды создания запроса |
3.3 | Операторы создания запроса | Операторы Where, Group by, Having, Order by |
Практическая работа №12 | Создание и управление базой данных с помощью SQL операторов | |
Практическая работа№ 13 | Создание простых запросов, добавление данных в таблицу. | |
Практическая работа №14 | Создание связей между таблицами | |
Практическая работа №15 | Создание сложных запросов | |
Итоговое занятие | Итоговый контроль знаний по разделам 1-4 |
3. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ КОНТРОЛЬНОЙ РАБОТЫ
|
|
|
|
3.1. Общие требования к выполнению контрольной работы
Контрольная работа проводится с целью проверки качества усвоения студентами учебного материала по дисциплине. На контрольную работу выносится практическая задача, охватывающая учебный материал в рамках тем теоретических занятий.
Номера вариантов исходных данных указываются каждому студенту индивидуально. К решению поставленной задачи необходимо приступать только после отработки необходимого теоретического материала по изучаемым темам.
Условия задания и результат выполнения по контрольной работе оформляются в папке на отдельных листах, с предоставлением электронного носителя с разработанным приложением, и не позднее указанного срока представляются на проверку. Студенты, получившие за выполнение контрольной работы положительную оценку, допускаются к сдаче экзамена.
При получении неудовлетворительной оценки или непредставлении работы в установленный срок студенты получают новое задание (или по решению преподавателя дорабатывают выданное ранее), которое затем представляют к защите в сроки, определенные преподавателем.
При выполнении контрольной работы необходимо руководствоваться материалами лекций и рекомендованной литературой.
3.2. Задание на контрольную работу
Разработать приложение Базы Данных в MS Access.
Выполнение задания выполняется по вариантам. Номер варианта соответствует номеру студента по журналу.
Ход работы:
1. Провести анализ предметной области. Разработать структуру и основные объекты БД.
2. Создать таблицы (не менее 5).
2.1. Дать описание полей таблиц.
2.2. Осуществить связывание таблиц.
2.3. Внести не менее, чем по 10 записей. Данные для заполнения выбрать самостоятельно.
В работе предоставить описание полей таблиц в режиме Конструктора, схему данных и результат заполнения таблиц.
3. Создать запросы (не менее 4):
3.1. Запрос на выборку
3.2. Параметрический запрос
3.3. Запрос с вычисляемыми полями
3.4. Запрос с использованием логических операторов BETWEEN, Like, In
В работе отразить запросы в SQL, режим Конструктора запросов и полученный результат.
4. Создать формы (не менее 2)
4.1. С помощью мастера на основе разработанного запроса
4.2. С помощью конструктора форму с подформой (подчиненной).
Предоставить разработанные формы.
5. Создать отчет (не менее 2)
5.1. С помощью Мастера разработать Отчет с использованием итоговых функций.
5.2. С помощью Конструктора разработать многотабличный Отчет.
6. Создать макросы (не менее 7)
6.1. Для открытия таблиц
6.2. Для открытия форм
6.3. Для печати отчета
6.4. Для вывода сообщения
6.5. Для выхода из Access
7. Разработать главную кнопочную форму
Спроектировать главную кнопочную форму. На ней разместить: название базы данных, кнопки, рисунки и другие графические элементы. Каждая кнопка связывается с выполнением созданного макроса. Задать автоматический запуск созданного приложения.
В работе предоставить разработанную форму.
8. Оформить работу
Расчетно-пояснительная записка должна содержать: описание предметной области, описание схемы базы данных, описание полей таблиц, описание разработанных объектов БД.
Предоставить носитель с разработанным приложением.
Варианты заданий:
№ вар. | База данных | Таблицы |
«Доставка товара» | Товар (код товара, название, цена, код производителя) | |
Заказ (код накладной, код товара, количество, код заказчика, дата выписки, оплата (да/нет)) | ||
Доставка (код накладной, дата доставки, адрес, телефон, цена, количество) | ||
Заказчик (код заказчика, название (фирмы или магазина), адрес, телефон) | ||
Производитель(код производителя, название компании, код товара, юридический адрес, директор) | ||
«Туристическое агентство» | Туры(код тура, код региона, код проживания, тип поездки, начало тура, длительность тура, стоимость) | |
Курорты(код региона, название курорта, код страны, название страны, столица, язык, география, валюта) | ||
Заказы(код тура, код клиента, дата заказа, вид транспорта, скидка) | ||
Клиенты(Код клиента, ФИО клиента, год рождения, адрес, телефон) | ||
Проживание (код проживания, категория гостиницы, вид услуг, стоимость проживания) | ||
«Кино кампания» | Актеры (код актера, Фамилия, Имя, год рождения, адрес, телефон) | |
Фильмы (код фильма, название, код актера, жанр, год выпуска, компания – производитель, затраты на производство) | ||
Фильмы и режиссеры(код фильма, название, код режиссера) | ||
Режиссеры (код режиссера, Фамилия, Имя, год рождения, адрес) | ||
Разное (код фильма, год выпуска, прибыль, цена видео, продано (количество)) | ||
«Спортивный клуб» | Секция (код секции, название секции, стоимость занятий, Фамилия тренера, название команды (необязательное)) | |
Участники (код участника, ФИО, код секции, Адрес, Учебное заведение, спортивный разряд) | ||
Оплата (номер квитанции, дата оплаты, код секции, код участника) | ||
Команды(название команды, вид спорта, Фамилия тренера, количество выигрышей) | ||
Тренеры(Фамилия, Имя, Отчество, вид спорта, спортивный разряд, год рождения, домашний адрес) | ||
«Цветочный магазин» | Растение (код растения, название растения, страна произрастания, цена) | |
Продажа (дата продажи, код растения, количество, код организации, оплата(да/нет)) | ||
Покупатель (код организации, название (или ФИО частного лица), банковские реквизиты, расчет (наличный или безналичный)) | ||
Поставки(регион, код растения, название растения, количество, дата поставки, личный номер ответственного работника) | ||
Работники(личный номер, ФИО работника, должность, дата приема на работу) | ||
«Приемная комиссия» | Абитуриенты(личный номер, Фамилия, Имя, Отчество, год рождения, код специальности) | |
Факультеты(название факультета, название специальностей) | ||
Специальности(код специальности, название специальности, описание) | ||
Экзамены (название факультета, код специальности, название дисциплины, дата экзамена) | ||
Оценки (личный номер, код специальности, оценка за 1й экзамен, оценка за 2 экзамен, оценка за 3 экзамен) | ||
«Служащие офиса» | Офис (№ офиса, город, регион, менеджер, план офиса (денежный), продажи офиса (денежный)) | |
Служащие (№ служащего, ФИО, № офиса, должность, дата найма, домашний адрес) | ||
Заказы (№ заказа, дата заказа, клиент, товар, количество, № служащего продавца) | ||
Заказчики(клиент (название фирмы), адрес, ответственный (ФИО)) | ||
Оплата(№ служащего, ФИО, стаж работы, зарплата) | ||
«Спортив ные мероприятия» | Мероприятия(код спортивного мероприятия, название мероприятия, описание) | |
Турнир(код спортивного мероприятия, код судьи, дата проведения, место проведения, участники (название клуба)) | ||
Судьи (код судьи, ФИО судьи, Категория, Служебный адрес, служебный телефон) | ||
Спортсмены(личный номер, ФИО, год рождения, вид спорта, название клуба, тренер) | ||
Тренер(ФИО тренера, название клуба, вид спорта, домашний адрес) | ||
«Сотрудники» | Штат (Таб_№, Должность, категория, оклад) | |
Преподаватели (личный номер преподавателя, ФИО, пед.стаж, код дисциплины, дата рождения, дата поступления) | ||
Дисциплины(код специальности, специальность, название дисциплины, ФИО преподавателя) | ||
Специальности(код специальности, код дисциплины, номер курса, номер семестра, количество часов на изучение, итоговый контроль (зачет/экзамен/контрольная) | ||
Расписание(код специальности код дисциплины, название дисциплины, код преподавателя) | ||
«Владение имуществом» | Лицо (№ лица, ФИО, дата рождения, серия и номер паспорта, адрес, № имущества) | |
Владение (№ лица, № имущества, вид (единоличное, совместное), доля (в совместном), дата приобретения) | ||
Имущество(№ имущества, категория (недвижимость, автотранспорт, акции, ювелирные изделия, художественные произведения, земельный надел), описание, стоимость) | ||
Налог(категория имущества, вид владения, сумма налога) | ||
Оплата (№ лица, № имущества, категория, дата оплаты (налога)) | ||
«Боевые корабли» | Классы(имя класса, тип, страна, число главных орудий, калибр, водоизмещение (в тоннах)) | |
Корабли (название, имя класса, год спуска на воду) | ||
Битвы (название корабля, название сражения, название военной кампании) | ||
Результаты(название корабля, название сражения, дата битвы, результат сражения (потоплен/поврежден/невредим)) | ||
Команды(название корабля, ФИО капитана, ФИО члена экипажа, дата найма) | ||
«Транс-Аэро» | Компании(название компании, тип самолета, пункт назначения) | |
Рейсы(название компании, номер рейса, тип самолета, пункт назначения, дата вылета, время вылета) | ||
Самолеты(номер рейса, тип самолета, число пассажирских мест, название авиакомпании, ФИО командира экипажа) | ||
Перевозки(название компании, номер рейса, дата вылета, количество проданных билетов) | ||
Пассажиры (личный номер, ФИО, паспортные данные, пункт назначения, дата вылета, время вылета, номер рейса, номер места) | ||
«Грузоперевозки» | Автомобили (Марка автомобиля, Гос. № автомобиля, Расход горючего (л), Грузоподъёмность) | |
Грузы (Код груза, Наименование груза, Вес груза (т.)) | ||
Водители (Код водителя, ФИО, дата рождения, год получения прав, категории, стаж, гос. № автомобиля) | ||
Перевозки (дата отправления, код груза, код водителя, пункт отправки, пункт назначения, Гос. № автомобиля, Расстояние (км.)) | ||
Автоколонны(№ А/К, автомобили (номера), ФИО водителей) | ||
«Компьютерная фирма» | Производитель(производитель,номер модели,тип (ПК, принтер, ноутбук, монитор)) | |
ПК(код,номер модели, скорость процессора (в мегагерцах), объем оперативной памяти (в мегабайтах), размер диска (в гигабайтах), скорость считывающего устройства, цена) | ||
Ноутбук (код,номер модели, скорость процессора (в мегагерцах), объем оперативной памяти (в мегабайтах), размер экрана, цена) | ||
Принтеры (код,номер модели, является ли он цветным, тип (струйный/лазерный), цена) | ||
Мониторы(код,номер модели, размер экрана, цена) | ||
«Продажа товаров» | Клиенты(номер клиента, юридическое название (или ФИО частного лица), номер продавца) | |
Служащие(номер служащего, ФИО служащего, дата рождения, номер офиса, должность, дата найма) | ||
Офисы(номер офиса, адрес, номер служащего) | ||
Товары(номер товара, название, цена, количество на складе) | ||
Заказы(номер заказа, дата заказа, номер клиента, номер продавца, номер товара, количество, стоимость) | ||
«Видеопрокат» | Диск (Код, название, носитель (видеокассета/диск), цена) | |
Фильм(код, название фильма, жанр, страна, режиссер, исполнитель главной роли, длительность) | ||
Выдача(код, дата выдачи, дата возврата, ФИО клиента, оплата (да/нет) | ||
Клиенты(ФИО клиента, адрес, телефон) | ||
Сотрудники(ФИО, дата работы, код выданного фильма) | ||
«Автомобили» | Автомобиль (Гос. номер автомобиля, марка автомобиля, километраж, дата регистрации) | |
Приобретение (Гос. номер автомобиля, код владельца, год приобретения, цвет, цена) | ||
Владельцы(код владельца, ФИО, адрес, гос.номер автомобиля, год получения прав, категории) | ||
Производители(название компании, марка автомобиля, год выпуска) | ||
Происшествия(дата, происшествие, номер автомобиля, ФИО владельца) | ||
«Компьютер ные игры» | Игра(код игры, название игры, жанр, год появления, фирмы) | |
Состав диска(серийный номер диска, код игры, приложения, библиотеки) | ||
Диск(код игры, год выпуска, тираж, цена) | ||
Продажи(№ офиса, код игры, цена, количество) | ||
Офисы(№ офиса, адрес, код игры, название игры, наличие на складе (количество)) | ||
Поликлиника | Отделения(№ отделении, название, зав.отделением (ФИО)) | |
Врачи(№ отделения, код врача, ФИО врача, специализация) | ||
Пациенты(личный номер, ФИО пациента, адрес, дата рождения, диагноз, ФИО врача) | ||
Кабинеты(№ кабинета, № отделения, ФИО врача) | ||
Прием(дата, код врача, ФИО пациента, предварительный диагноз, № отделения (куда направлен)) | ||
«Налоги» | Налогоплательщики(личный номер, ФИО, адрес, дата рождения) | |
Предприятия(Название предприятия, ФИО работника, личный номер,) | ||
Доходы (личный номер, ФИО, годовой доход, сумма уплаченных налогов) | ||
Уплата налогов(личный номер, сумма налогов, дата оплаты) | ||
Налоговая служба | ||
«Олимпиада по информатике» | Учебные заведения (Название учебного заведения, категория, город) | |
Участники (Фамилия И.О., название учебного заведения, факультет, курс, название команды, личные достижения) | ||
Регистрация(Фамилия И.О., Название команды, личный номер) | ||
Ведомость(Название команды, личный номер, Количество баллов за 1 тур, Количество баллов за 2 тур, Количество баллов за 3 тур, Примечание) | ||
Капитаны (ФИО, Название команды, название учебного заведения) | ||
«Кабельное телевидение» | Компании(названии компании, адрес, директор (ФИО), телефон) | |
Клиенты(личный номер абонента, Фамилия абонента, название улицы, номер дома, номер квартиры) | ||
Подключения(личный номер абонента, вид услуги, дата подключения) | ||
Оплата(личный номер абонента, вид услуги, наличие оплаты (да/нет)) | ||
Прайс (название компании, вид услуги, стоимость услуги) | ||
«Книжный магазин» | Книги(код книги, автор, название, количество страниц, жанр, издательство, год издания, цена) | |
Продажи(личный номер сотрудника, код книги, количество, дата) | ||
Сотрудники(личный номер сотрудника, ФИО, адрес, зарплата) | ||
Поставки (№ накладной, код книги, название издательства, количество) | ||
Издательства(Название, адрес, ФИО директора, телефон) | ||
«Складской учет» | Товары(код товара, наименование, производитель, цена) | |
Заказы(код заказа,заказчик, код товара, производитель, количество) | ||
Наличие на складе(код товара, наименование, количество на складе (необязательное)) | ||
Доставка(код заказа, код товара, количество, дата доставки, оплата, вид доставки (авто, авиа, ж/д)) | ||
Поставщики(Наименование предприятия, код товара, ФИО директора, телефон) | ||
«Ремонт аппаратуры» | Сотрудники(ФИО, № отдела, дата найма, зарплата) | |
Отделы(№ отдела, вид занятий, количество работников) | ||
Прием аппаратуры (название, марка, вид неисправности, дата приема в ремонт, Фамилия клиента, адрес) | ||
Прейскурант цен(название аппаратуры, вид неисправности, цена ремонта) | ||
Поставщики(название предприятия, адрес, название аппаратуры, название детали, цена детали) | ||
«Почтовые услуги» | Офисы(№ офиса, адрес, ФИО начальника) | |
Сотрудники(личный номер, ФИО, № офиса, должность, оклад) | ||
Почтовые отправления(код, тип отправления, пункт отправления (№ офиса), пункт назначения (№ офиса), дата отправления) | ||
Прайс(код, тип отправления, цена) | ||
Абоненты (ФИО, Код почтового отправления, дата отправления, оплата) | ||
Торговая фирма | Товары (код товара, наименование, код поставщика, наличие на складе (количество)) | |
Сотрудники(код сотрудника, ФИО, должность) | ||
Клиенты (код заказа, клиент, дата размещения, дата исполнения, оплата (да/нет)) | ||
Заказы(код заказа, код сотрудника, наименование товара, код товара, цена, количество, скидка (числовой - всего 4 вида скидок). | ||
Поставщики(код поставщика, название, адрес, телефон) | ||
«Строймаркет» | Отделы(№ отдела, название, начальник отдела) | |
Материалы(код материала, название, цена, описание, № отдела) | ||
Сотрудники(личный номер, ФИО, № отдела, дата найма, должность, зарплата) | ||
Заказы(№ накладной, код материала, цена, количество, дата заказа) | ||
Клиенты(№ накладной, код товара, название товара, ФИО, адрес, телефон) | ||
Фирма Вторсырья | Пункты приема(№ пункта, адрес, вид сырья) | |
Сдатчики(личный номер, ФИО, адрес) | ||
Прием(№ пункта, дата приема, вид сырья, количество, стоимость) | ||
Сотрудники(личный номер, ФИО, № пункта, зарплата) | ||
Поступление денежных средств(№ счета, № пункта, сумма денег, дата поступления) | ||
«Сборочный цех» | Работник(Табельный № работника, ФИО, № участка, название оборудования, стаж работы, зарплата) | |
Оборудование (название, производственные операции, дата установки, дата выхода из строя, исправность (да/нет)) | ||
Цех(название цеха, название оборудования, количество оборудования) | ||
Детали(код детали, для оборудования (название), стоимость, наличие на складе (количество)) | ||
Поставки(дата заказа, код детали, количество, дата поставки) | ||
«Центр трудоустройст- ва» | Граждане(Регистр. № безработного, ФИО, Адрес, возраст, пол, дата постановки на учет, профессия, образование) | |
Предприятия(название предприятия, адрес, телефон отдела кадров) | ||
Спрос(название предприятия, требуемая профессия, оклад, требуемый пол, образование) | ||
Предложения(Регистр. № безработного, профессия) |
3.3. Пример выполнения задания контрольной работы
Задание: создать базу данных «Учебный процесс».
- Анализ предметной области.
Создание приложения «Учебный процесс» может быть предназначено для автоматизации работы учебной части ВУЗа. В приложении должны отображаться: списки студентов по группам, анкетные данные студентов, общие сведения о социальном положении. Должна быть возможность получить сведения о преподавателях: домашний адрес, телефон, читаемые дисциплины. Создание приложения подразумевает не только сбор и хранение данных, но и вывод необходимой информации с помощью запросов и отчетов. Для удобства и автоматизации работы должны быть разработаны соответствующие формы и макросы.
База данных состоит из пяти таблиц:
Студенты (№ группы,№ студента (по журналу), ФИО, Год рождения, Адрес, Проходной балл при поступлении)
Группа (№ группы, Количество студентов, проходной балл)
Преподаватели (Табельный номер, ФИО, Ученая степень, Код предмета)
Предмет (Наименование предмета, Код предмета, Общее количество часов, Часы на лекции, Часы на практику, сколько семестров изучается)
Успеваемость (№ группы, ФИО студента, Код предмета, Вид занятия, Дата, Оценка)
2. Создание таблиц в режиме Конструктора.
2.1. Описание атрибутов, составляющих структуру каждого объекта:
Группа ( № группы, Количество студентов, Проходной балл)
Описание полей:
НГ - (№ группы) – текстовое, ключевое
КОЛ –(количество студентов) числовое
ПБАЛЛ – (проходной балл) – числовое
Студенты (№ группы,№ студента (по журналу), ФИО, Год рождения, Адрес, Проходной балл при поступлении)
Описание полей:
НГ –(№ группы ) текстовое,ключевое
НС – (номер студента) - текстовое, ключевое
ФИО – текстовое
ГР – (год рождения) - дата
Адрес – текстовое
ПБалл – (проходной балл) - числовое
Преподаватели ( Табельный номер, ФИО, Ученая степень, Код предмета)
Описание полей:
ТАБН – (табельный номер) – текстовое, ключевое
ФИО – текстовое
СТ -(ученая степень) - текстовое
КПредм – (код предмета) - текстовое
Предмет ( Код предмета, Наименование предмета, Общее количество часов, Часы на лекции, Часы на практику, число семестров изучения)
Описание полей:
КП – (код предмета) – текстовое, ключевое
НП - (наименование предмета) - текстовое
Часы – (общее количество часов) - числовое
ЛЕК – (часы на лекции) - числовое
ПР – (часы на практику) – числовое
ЧС - (число семестров изучения) – числовое
Успеваемость ( № группы, ФИО студента, Код предмета, Вид занятия, Оценка, Дата)
Описание полей:
НГ – (номер группы) – текстовое, ключевое
НС – (номер студента) – текстовое, мастер подстановок из таблицы Студенты, ключевое
КПредм – текстовое, мастер подстановок из таблицы Предметы (КПредм), ключевое
ВИДЗ – (вид занятия) – текстовое, ключевое
Дата – дата/время
Оценка - числовое
2.2. Связывание таблиц.
Связывание осуществляется по полям первичных и внешних ключей таблиц. Методом «буксировки» мышью.
Для автоматической корректировки данных установить в окне выбора параметров связи следующие режимы:
· Обеспечение целостности данных,
· Каскадное обновление связанных полей
· Каскадное удаление связанных записей.
Для того, чтобы в таблицах задать составной первичный ключ, необходимо удерживать клавишу SHIFT выделяя нужные поля и установить их ключевыми.
2.3. Заполнение таблиц.
Для того, чтобы данные таблиц не противоречили друг другу рекомендуется использовать мастер подстановок.
В результате получаются таблицы с вложенными (подчиненными) таблицами:
Таблица Группа
Таблица Студенты
Таблица Предмет
Таблица Преподаватель
Таблица Успеваемость
3. Создание запросов.
3.1. Запрос на выборку
Получить оценки студентов. Условие отбора: № группы =321.
Запрос в SQL:
SELECT Студенты.НГ, Студенты.НС, Студенты.ФИО, Успеваемость.КПредм, Успеваемость.ОЦЕНКА
FROM Студенты INNER JOIN (Предмет INNER JOIN Успеваемость ON Предмет.КПредм = Успеваемость.КПредм) ON (Студенты.НС = Успеваемость.НС) AND (Студенты.НГ = Успеваемость.НГ)
WHERE (((Студенты.НГ)="321"));
Конструктор запросов:
Результат запроса
3.2. Параметрический запрос
Параметрический запрос – не использует статичный критерий, поле настраивается так, что сама программа запрашивает ввод критерия при каждом запуске запроса на выполнение. В качестве параметра должны выступать только константы (строчные, числовые, логические, даты и времени). При необходимости можно устанавливать несколько параметров одновременно.
Запрос: Получить по фамилии преподавателя код предмета, название предмета, который он ведет, общее количество часов на дисциплину, количество часов на лекции и на практику.
- в конструкторе добавить необходимые таблицы;
- выбрать необходимые поля для получения ответа на запрос;
- в строке условие отбора в квадратных скобках указать критерий отбора, который будет запрашиваться при каждом выполнении запроса.
Запрос в режиме SQL:
SELECT Преподаватель.ФИО, Преподаватель.КПредм, Предмет.ЧАСЫ, Предмет.ЛЕК, Предмет.ПР, Предмет.НП
FROM Предмет INNER JOIN Преподаватель ON Предмет.КПредм = Преподаватель.КПредм
WHERE (((Преподаватель.ФИО)=[введите фамилию преподавателя]));
Выполнение запроса:
Результат запроса:
3.3. Запрос с вычисляемыми полями
Вычисляемое поле, включенное в запрос, позволяет получить новое поле с результатами вычисления только в таблице запроса и не создает полей в таблицах базы данных.
Запрос: найти записи о предметах, в которых общее число часов по предмету не совпадает с суммой часов лекций и практики.
· Создать запрос на выборку для таблицы ПРЕДМЕТ. Перетащить в бланк запроса поля НП, ПР, ЛЕК, Общее кол-во часов. Создание вычисляемого поля. Для получения разности создадим вычисляемое поле в пустой ячейке строки Поле, записав туда выражение: [Общее количество часов]-[ПР]-[ЛЕК].
· Для отбора записей с ненулевым значением разности в вычисляемом поле в строку Условие отбора введем < > 0 (не равно 0).
· После ввода выражения система формирует имя вычисляемого поля по умолчанию — Выражение 1:. Это имя вставится перед выражением. Для изменения имени установить курсор мыши в вычисляемом поле бланка запроса и нажать правую кнопку мыши. В контекстно-зависимом меню выбрать Свойства поля и в строку Подпись ввести новое имя поля — ЧАСЫ не равны ПР+ЛЕК. Имя поля может быть исправлено также непосредственно в бланке запроса.
Построенный запрос может быть использован для проверки правильности заполнения поля ЧАСЫ в таблице ПРЕДМЕТ.
Режим Конструктора запросов:
Запрос в режиме SQL:
SELECT Предмет.НП, Предмет.ЧАСЫ, Предмет.ЛЕК, Предмет.ПР, Предмет.ЧАСЫ- Предмет.ЛЕК- Предмет.ПР AS подсчет часов
FROM Предмет
WHERE (Подсчет часов <> 0);
Результат запроса:
3.4. Запрос с использованием логических операторов BETWEEN, Like, In
Оператор Like – в комбинации с этим оператором используются подстановочные знаки:
? – используется вместо любого символа
* - подставляется вместо любой группы символов
Оператор BETWEEN ….AND – используется для отбора записей, в которых значение поля находится между двумя другими значениями. Можно использовать с числами, датами и с текстом.
Оператор IN – если нужно отобрать записи, в которых некоторое поле содержит одно из нескольких значений
· Получить фамилии студентов и номера их групп, если проходной балл при поступлении у них был от 4 до 5. В условии отбора для поля Проходной Балл вводится выражение Between 4 And 5
· Вывести фамилии студентов, начинающиеся с буквы С. В условие отбора для поля ФИО вводится выражение Like "С*"
Операторы в условии отбора можно применять одновременно, тогда при выполнении запроса между ними производится логическая операция «и».
Режим Конструктора:
Запрос в режиме SQL:
SELECT Студенты.НГ, Студенты.ФИО, Студенты.ПБАЛП
FROM Студенты
WHERE (((Студенты.ФИО) Like "С*") AND ((Студенты.ПБАЛП) Between 4 And 5));
Результат запроса:
4.Создание форм.
4.1. Создание формы с помощью мастера на основе разработанного запроса
· Перейти на вкладку Формы. Нажать кн. Создать, в окне Новая форма выбрать Мастер форм, в качестве источника установить запрос Успеваемость, нажать ОК.
· В окне Создание формы с помощью кн. переместить все нужные наименования полей из поля Доступные поля: в поле Выбранные поля: нажать кн. Далее>
· В следующем окне выбрать внешний вид формы, нажать кн. Далее>.
· Установить требуемый стиль, кн. Далее>, затем Готово.
· Сохранить форму с именем, соответствующим имени запроса
4.2. Создание формы с подчиненной таблицей (подформой)
- создать с помощью Мастера форму на основе таблицы Студенты, выбрав поля: Номер группы, номер студента, ФИО. Выбрать оформление Международное, вид – ленточный.
- Открыть созданную форму в режиме Конструктора.
- Вывести на экран область заголовков и примечаний формы, линейку и сетку, панель элементов и список полей (команды Заголовок/Примечание формы, Линейка и Сетка, Панель элементов и Список полей в меню Вид).
- Добавить в область данных из панели элементов объект Подчиненная форма/отчет. Наличие встроенных мастеров помогает осуществить необходимые операции по добавлению объектов.
- С помощью команд меню и панелей инструментов окна произвести необходимое редактирование и форматирование элементов в области данных.
- Просмотреть макет формы, используя команду Режим формы в меню Вид.
5.Создание отчетов.
5.1. Разработка отчета с помощью Мастера с использованием итоговых функций.
Отчет на основе таблицы Оценки, выводящий оценки студентов на занятиях с группировкой по номеру группы и показывающий средний балл успеваемости по группе.
5.2. Разработка с помощью Конструктора многотабличного отчета.
Создать отчет, выводящий на печать экзаменационную ведомость – списки по группам с указанием названия дисциплины, ФИО преподавателя и датой сдачи предмета.
· Создать сначала в Мастере многотабличный отчет, включив в него все нужные поля для создания отчета Ведомость. Для этого перейти на вкладку Отчет, выбрать Создать, Мастер отчетов.. В окне выбрать таблицу Успеваемость. Добавить необходимые поля.
· Выбрать на вкладе Отчет меню Создать. Выбрать режим создания Конструктор. В качестве источника данных выбрать запрос Экзаменационная Ведомость.
· Воспользовавшись меню Вид установить Заголовок/Примечание. В заголовок поместить надпись Экзаменационная ведомость. Установить размер и тип шрифта, соответствующий данному документу.
· В верхний колонтитул поместить из списка полей надписи с полями: Название дисциплины, Преподаватель, Номер группы. При необходимости поменять надписи полей и установить необходимый размер и тип шрифта.
· В верхний колонтитул поместить надписи к полям Номер студента и ФИО студента. Сами поля разместить в области данных отчета.
· Добавить в отчете в верхний колонтитул свободные элементы – надписи № билета, оценка.
· На панели элементов выбрать инструмент Линия и прорисовать нужные линии для создания таблицы Ведомости.
· Добавить в верхний колонтитул дату сдачи экзамена.
6.Создание макросов.
Макрос представляет собой структуру, состоящую из одной или нескольких макрокоманд, которые выполняются либо последовательно, либо в порядке заданном определенными условиями.
6.1. Макросы для открытия таблиц
- Для создания макросов открывают вкладку Макросы в окне базы данных и нажимают кнопку Создать. Откроется окно макросов, состоящее из двух полей. Это окно можно переместить так, чтобы одновременно были видно оно и окно базы данных.
- Выбрать в первом столбце макрокоманду Открыть таблицу;
- В нижнем окне Аргументы макрокоманды выбрать название таблицы Студенты.
- Выбрать режим данных Только чтение.
- Сохранить макрос с именем Студенты.
Аналогично создаются макросы для других таблиц.
6.2. Для открытия форм
· Открыть вкладку Макросы в окне базы данных и нажать кнопку Создать.
· Выбрать в первом столбце макрокоманду Открыть форму;
· В нижнем окне Аргументы макрокоманды выбрать название формы Успеваемость.
· Выбрать режим окна Обычное.
· Сохранить макрос с именем Успеваемость.
6.3. Для печатания отчета
· Открыть вкладку Макросы в окне базы данных и нажать кнопку Создать.
· Выбрать в первом столбце макрокоманду Открыть отчет;
· В нижнем окне Аргументы макрокоманды выбрать название отчета Списки групп.
· Выбрать режим Печать.
· Режим окна Обычное.
· Сохранить макрос с именем Печать отчета
6.4. Для вывода сообщения
· Открыть вкладку Макросы в окне базы данных и нажать кнопку Создать.
· Выбрать в первом столбце макрокоманду Сообщение.
· В нижнем окне Аргументы макрокоманды в строке Сообщение набрать текст, который будет содержаться в выводимом на экран сообщении.
· Выбрать сигнал Да.
· Выбрать тип Информационное.
· В строке Заголовок набрать текст – заголовок диалогового окна выводимого сообщения
· Сохранить макрос с тем же именем, что и заголовок.
Проверить работу макроса. Выводимое сообщение:
6.5. Для выхода из Access
· Открыть вкладку Макросы в окне базы данных и нажать кнопку Создать.
· Выбрать в первом столбце макрокоманду Выход;
· В нижнем окне Аргументы макрокоманды выбрать параметры Сохранить все.
· Сохранить макрос с именем Выход
7. Разработка главной кнопочной формы.
- Перейти на вкладку Формы, выбрать Создание формы в режиме Конструктора. В качестве источника данных ничего не выбирать.
· Вывести в макет формы область Заголовков и Примечания (меню Вид).
· С помощью панели элементов разместить на форме необходимые объекты.
· С помощью элемента надпись из панели элементов ввести заголовок Учебный процесс. Установитьразмер шрифта, насыщенность, цвет шрифта.
· Разместить на форме кнопки из панели элементов. Связать кнопки с выполнением ранее созданных макросов, используя окно Свойства.
· Поменять надписи на кнопках в соответствии с выполняемыми макросами.
- Поместить на форму рисунок, соответствующий теме базы данных. Оформить форму графическими элементами. Установить цвет и тип шрифта и фона. Завершить оформление кнопочной формы, проверив работу всех кнопок и очередность перехода.
В контрольной работе предоставить носитель с разработанным приложением.
Вывод: разработанное приложение может быть использовано в работе деканата или в работе учебной части какого-либо учебного заведения. При добавлении данных оно позволит учитывать весь контингент учащихся и преподавателей. При необходимости предоставит нужные сведения по запросу. Позволит распечатывать списки групп, экзаменационные ведомости, справки об обучении и другую документацию. Связывание таблиц с обеспечением каскадного добавления и удаления полей позволит добавлять и удалять записи о студентах сразу во всех связанных таблицах. Данное приложение позволит избежать ошибок и автоматизировать работу секретарей.
4. ВОПРОСЫ ДЛЯ САМОСТОЯТЕЛЬНОГО ИЗУЧЕНИЯ
Тема 1. ОРГАНИЗАЦИЯ БАЗ ДАННЫХ
1. Критерии выбора программного продукта.
2. Современное состояние развития баз данных. Направления дальнейшего развития.
3. Ограничения целостности отношений. Доменная целостность. Ссылочная целостность.
4. Логическое проектирование Баз Данных. Аномалии добавления, удаления, модификации.
Тема 2. СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ
1. Особенности интерфейса MS Access.
2. Изменение определения данных в таблицах.
Тема 3. ОРГАНИЗАЦИЯ ОБРАБОТКИ ДАННЫХ
1. Создание и изменение структуры Базы Данных.
2. Сортировка и фильтрация данных.
3. Отличие таблиц БД от электронных таблиц Excel.
4. Виртуальные таблицы. Представления и курсоры.
Тема 4. РАЗРАБОТКА ПРИЛОЖЕНИЙ ДЛЯ БАЗ ДАННЫХ
1. Функции администрирования Баз Данных. Обеспечение безопасности.
2. Управление правами доступа.
3. Раздел DCL языка SQL.
4. Использование маски ввода и мастера подстановок.
Тема 5. Проекты баз данных
1. Определение и назначение триггеров.
2. Хранимые процедуры. Функции хранимых процедур.
3. Транзакции. Управление транзакциями в многопользовательском режиме.
Тема 6. АВТОМАТИЗАЦИЯ ОБРАБОТКИ ДАННЫХ И РАБОТА С ПРИЛОЖЕНИЕМ В СЕТИ
1. Раздел DCL языка запросов SQL.
2. Импорт и экспорт баз данных.
3. Двухзвенная архитектура «клиент-сервер».
5. РЕКОМЕНДОВАННАЯ ЛИТЕРАТУРА
ОСНОВНАЯ
1. М.П. Малыхина Базы данных: основы, проектирование, использование. Учебное пособие. СПб.: БХВ - Петербург, 2004.
2.А.Д.Хомоненко. учебник «Базы данных» Санкт-Петербург КОРОНА принт 2002г.
3. С.Д. Кузнецов «Основы баз данных» Москва Интернет-Универсистет Информационных Технологий, 2005 г.
4. Н.А.Гайдамакин «Автоматизированные информационные системы, базы и банки данных» Москва «Гелиос АРВ», 2002 г.
5. С.В.Глушаков, Д.В.Ломотько «Базы данных» Харьков «фолио», Москва «АСТ», 2000 г.
6. Хансен Г. Хансен Д. «Базы дан