
- •Оглавление
- •Введение. Общие сведения Структура базы данных
- •Конструктор таблиц и форматы данных
- •Формирование связи
- •Целостность данных
- •Работа с мастерами
- •Формы и отчеты wysiwyg
- •Многотабличные запросы
- •Графики и диаграммы
- •Встроенные функции
- •Макрос: программирование без программирования
- •Модули: Visual Basic for Applications
- •Импортирование, экспортирование и связывание внешних файлов
- •Возможности dde и ole
- •Постановка практической задачи
- •Лабораторная работа № 1 Создание структуры базы данных и установление связей между таблицами
- •Лабораторная работа № 2 Создание однотабличных форм для ввода данных в таблицы
- •Лабораторная работа № 3 Формирование запросов для многотабличной базы данных
- •Лабораторная работа № 4 Разработка сложной составной формы со встроенной диаграммой
- •Лабораторная работа № 5 Создание отчетов с вычисляемыми полями и итоговыми данными
- •Лабораторная работа № 6 Завершение работы над базой данных: разработка кнопочного меню
- •Субд Access: основные термины
- •Индивидуальные задания по курсу «Автоматизация бизнес-процессов»
- •Список литературы
Субд Access: основные термины
Mdb, mde – расширения файлов баз данных Access (до версии MS Office 2007). Первоначально программа создается в формате mdb. После компиляции программы и скрытия некоторых файлов разработчик получает исполняемый файл в формате mde.
OLE (Object database connectivity) – протокол для связывания и внедрения объектов. Позволяет использовать данные в других форматах.
MEMO – тип данных, позволяющий хранить большие объемы текстовых данных
SQL (structured query language) структурированный язык запросов. Стандартный (для многих СУБД) язык, позволяющий формировать запросы на отбор (сортировку, объединение и т.д.) определенных данных из таблиц.
Русские термины:
База данных – это файл, в котором хранятся все объекты, необходимые для обеспечения работы пользователя: текстовые и графические данные, программы, формы, отчеты, руководства и т.д.
Объекты базы данных - основные части СУБД (таблицы, запросы, формы, отчеты, макросы и модули, станицы доступа к данным).
Свойства – набор параметров, характеризующих объект. Как и в VBA.
Мастер – компонент программы, созданный для решения определенной задачи.
Конструктор – режим разработки объекта базы данных.
Таблица – объект, состоящий из полей (столбцов) и записей(строк). Это основной контейнер для хранения пользовательских данных.
Запрос – способ отбора данных (записей), хранящихся в таблицах, или способ обработки данных, например, сортировки. Для формирования запросов используется язык SQL, а визуально запрос представлен в виде окна с таблицей.
Форма – окно или область в окне, где представлены поля с данными, таблица или элементы управления.
Отчет – средство для компоновки данных с целью вывода их на печать.
Макрос – набор команд, который позволяет автоматизировать выполнение операций или создавать новые операции. В окне БД А. есть специальная вкладка, позволяющая создавать и запускать макросы.
Модуль – контейнер для хранения программ VBA. В окне СУБД одноименная вкладка для создания программ.
Связь или отношение – установка соответствия между записями различных таблиц и запросов. Связь устанавливается по значению одного из полей ( как правило, ключевого). Существует несколько видов связей. «Один к одному», «Один-ко-многим», «многие ко многим» - комбинация двух связей «один-ко-многим».
Индекс – свойство поля, позволяющее ускорить поиск данных и сортировку по значению этого поля. Индексация применяется практически во всех СУБД, и от того, как она организована, зависит быстродействие СУБД.
Первичный ключ – поле, которое не содержит повторяющихся значений и позволяет идентифицировать каждую запись в таблице. Классический пример – «номер по порядку». Ключевые поля всегда индексированы.
Счетчик – поле, в котором производится автоматическая нумерация записей.
Индивидуальные задания по курсу «Автоматизация бизнес-процессов»
1.
Создайте базу данных Экспорт товаров, в которой должны содержаться сведения об экспортируемых товарах: наименование товара, страна, импортирующая товар, объем поставляемой партии, дата поставки. Сформулируйте запросы на получения сведений:
о странах, в которые экспортируется данный товар;
обо всех поставках в определенную страну;
о странах, в которые были осуществлены поставки в определенный период времени
обо всех поставках, объем которых в заданных пределах.
2.
Создайте базу данных Курсовые работы. В таблице базы данных должна содержаться информация: номер записи, фамилия учащегося, фамилия преподавателя, дата сдачи работы, полученная оценка. Сформируйте запросы на получение информации:
обо всех отличниках (учащихся, получивших оценку 5);
об учащихся, сдавших работы в указанный период;
о преподавателях, проверивших курсовые работы в определенное время;
об учащихся, сдавших курсовую работу в заданный период с оценкой выше 3.
3.
Создайте базу данных График обследования больных. В таблице базы данных должна содержаться информация: номер записи, фамилия пациента, дата обследования, поставленный диагноз, фамилия врача. Сформируйте запрос для ответа на вопрос:
кому из больных поставлен определенный диагноз;
кто из пациентов обследовался в определенный период времени;
кому из пациентов поставлен некоторый диагноз в определенный период;
какие пациенты обследовались определенным врачом.
4.
Создайте базу данных Отгрузка со склада, в которой должны содержаться сведения о том, какие изделия каких видов хранятся на складе. Организация-получатель, фамилия ответственного за отгрузку. Сформулируйте запросы для получения информации: Кроме того, ведется журнал отгрузки, в котором фиксируется дата, отгружаемый товар, объем партии. С помощью запросов получить сведения:
о товарах, отгруженных в определенный день;
об организациях, в которые были отгружены товары в определенный период времени;
о товарах, объем поставок которых более заданной величины;
обо всех операциях, ответственным за которые был указанный человек.
5.
Создайте базу данных Технический осмотр. В таблице базы данных должна содержаться информация: номер записи, дата сдачи, фамилия владельца автомобиля, марка машины, год изготовления, фамилия инспектора. Сформируйте запрос на получение информации о том,
кто из владельцев прошел техосмотр в указанный период;
какие марки автомобилей были осмотрены в заданный период времени;
в какие дни проходили технический осмотр машины с определенным годом выпуска;
в какие дни был произведен осмотр машин некоторым инспектором.
6.
Создайте базу данных Журнал регистраций пансионата. В таблице базы данных должна содержаться информация: номер записи, фамилия отдыхающего, дата заезда, номер комнаты, дата отъезда и отметка об оплате. Постройте запрос на получения сведений:
о том, кто из отдыхающих не оплатил проживание;
какие из комнат свободны на сегодняшний день;
кто из отдыхающих проживал в пансионате менее заданного срока;
кто из отдыхающих проживал в некоторой комнате в определенный период времени.
7.
Создайте базу данных Журнал регистрации переговоров. В таблице базы данных должна содержаться информация: номер записи, фамилия звонившего, дата переговоров, продолжительность разговора, номер телефона. Сформируйте запрос для определения:
фамилий звонивших по определенному номеру телефона;
дней, продолжительность разговоров в которые превышала определенную величину;
звонивших в заданный промежуток времени;
номеров телефонов, по которым звонил некоторый сотрудник.
8.
Создайте базу данных Расписание экзаменов. В таблице базы данных должна содержаться информация: номер записи, дата сдачи экзамена, номер группы, название сдаваемого предмета, фамилия преподавателя. Сформируйте запрос для формирования:
расписания экзаменов определенной группы;
расписания сдачи экзамена по определенному предмету;
списка дней приема экзамена некоторым преподавателем:
номеров групп, сдающих экзамены в определенный день.
9.
Создайте базу данных Учет канцелярских товаров. В таблице базы данных должна содержаться информация: номер записи, фамилия покупателя, дата покупки, купленный предмет, истраченная сумма. Сформируйте запрос для определения:
покупателей, сделавших покупку на сумму, превышающую заданную;
какие предметы были куплены за определенный период;
какие покупки делал некоторый человек в заданный период времени;
какие суммы были истрачены покупателями в определенный день.
10.
Создайте базу данных Выдача ключей. В таблице базы данных должна содержаться информация: номер записи, фамилия сотрудника, взявшего ключ, номер аудитории, время взятия ключа и время возвращения. Сформируйте запрос для определения:
фамилий сотрудников, пользующихся ключами от некоторой аудитории в заданный день;
списка номеров аудиторий, которые были заняты в определенный период времени;
какая из аудиторий за весь период формирования использовалась чаще других;
какая из аудиторий использовалась в течение наибольшего периода времени.
11.
Создайте базу данных Абоненты. В базе данных должна содержаться информация: фамилия абонента, номер домашнего телефона, домашний адрес, номер договора, срок действия договора и дата его заключения. В результате выполнения запросов определяется следующая информация:
Все абоненты, номера договоров которых лежат в заданном интервале.
Номера телефонов абонентов, проживающих на заданной улице.
Фамилии абонентов, срок действия договоров с которыми заканчивается в определенный период времени.
Фамилии абонентов, срок действия договоров с которыми менее заданного значения, номер договора из заданного диапазона, дата заключения более указанного значения.
12.
Создайте базу данных Тестирование школьников. В базе данных должна содержаться информация: фамилия учащегося, номер школы, класс, фамилия преподавателя, и сведения о двенадцати предлагаемых на тестировании задач. За каждую задачу может быть проставлен балл: 1, 0.66, 0.33, 0. В результате сформированных запросов должна быть получена следующая информация:
Таблица фамилий школьников с общей суммой за весь тест.
Определить N лучших школьников определенной школы.
Таблица фамилий преподавателей, ученики которых набрали число баллов за тест, больше заданного значения.
Таблица задач, в порядке их трудности.
Результаты по каждой из школ.
13.
Создайте базу данных Соревнование. В базе данных должна содержаться информация: фамилия спортсмена, год рождения, страна, которую он представляет, время старта, время финиша. В результате выполнения запросов должны быть получены следующие сведения.
Определить самого молодого спортсмена (из всех участников и спортсмена заданной страны)
Список участников в порядке возрастания времени прохождения трассы.
Списки спортсменов одной страны в порядке возрастания времени прохождения трассы
Список спортсменов, финиширующих в заданный промежуток времени.
Средний возраст спортсменов каждой команды.
14.
Создайте базу данных Семейный бюджет. В базе данных должна содержаться информация: статья расходов, потраченная сумма, дата, сведение о члене семьи. Статья расходов может включать, например, транспорт, питание, развлечение, учеба и т.п. В базе данных должна быть информация о доходах семьи. С помощью запросов определите:
Затраты в заданный период по определенной статье расходов.
Список членов семьи в порядке убывания расходов.
Список приобретенных товаров в порядке убывания их стоимости.
Затраты по определенной статье расходов.
Общие затраты по различным статьям.
15.
Создайте базу данных Экзамены экстернат по иностранному языку. В базе данных должна содержаться информация: фамилия сдающего экзамен, год рождения, номер школы, фамилия преподавателя, сдаваемый язык, полученная оценка (по 100 бальной системе), дата сдачи, фамилия преподавателя, принимающего экзамен, другие сведения о преподавателе. С помощью запросов должна быть определена:
Таблица учеников, сдававших экзамен по определенному языку за определенный промежуток времени.
Таблица преподавателей, чьи студенты получили лучшие оценки.
Список экзаменующихся заданной школы по заданному языку в порядке убывания баллов.
Средний возраст экзаменующихся.
Определить, какой язык самый популярный в заданной возрастной категории.
16.
Создайте базу данных Олимпиада. В базе данных должна содержаться информация: фамилия участника, год рождения, номер школы, фамилия преподавателя, сведения о решенных задачах. Для каждой задачи определено максимальное число баллов, которые за нее можно получить. За каждую задачу участнику задачи начисляется 100, 50, 30 или 0 процентов в зависимости от результатов прохождения теста. В результате выполнения запросов должна быть получена следующая информация:
Таблица фамилий школьников с общей суммой набранных баллов по всем задачам.
Определить N лучших школьников определенной школы.
Таблица фамилий преподавателей, ученики которых набрали число баллов за решенные задачи, больше заданного значения.
Таблица задач, в порядке их трудности.
Список задач, которые были решены минимальным количеством участников.
Результаты по каждой из школ.
17.
Создайте базу данных Абонементы в бассейн. В базе данных должна содержаться информация: фамилия покупателя, год рождения, дата, с какого времени действителен абонемент, стоимость абонемента. Абонемент можно купить на 9, 6, 3 или 1 месяц. Известна стоимость абонемента на один месяц. С помощью запросов определить:
Список всех, занимающихся с ноября по май.
Определит самого молодого и самого пожилого пловца.
Определить, абонементы какой продолжительности пользуются популярностью.
Определить, сколько и на какой срок продано абонементов в каждый месяц.
Определить фамилии всех, занимающихся в определенный период времени.
Определить средний возраст участников, занимающихся в бассейне.
18.
Создайте базу данных Игрушки. В базе данных должны храниться сведения: название игрушки (кукла, кубики, мяч, конструктор и т.п.), ее стоимость, возрастные границы детей, для которых она предназначена, число экземпляров на складе. С помощью запросов определить:
Название игрушек, цена которых не превышает заданную цену.
Название N самых дорогих игрушек.
Название игрушек для детей возраста из заданного интервала.
Цены всех игрушек данного наименования.
Название игрушек для детей определенного возраста, цена которых находится в заданном интервале.
19.
Создайте базу данных Эстафета. В базе данных должны храниться сведения: фамилия всех участников эстафеты, сведения о командах, участвующих в эстафете, число этапов. На каждом этапе прохождения трассы фиксируется фамилия спортсмена, время старта и время финиша. Постройте запросы для определения:
Всех участников заданного этапа эстафеты с их временем прохождения трассы.
Победителей эстафеты и победителей каждого этапа эстафеты.
Всех стартовавших с заданного этапа в определенный промежуток времени.
Результаты прохождения трассы определенной команды.
Результаты (этап, время) заданного спортсмена.
Средний возраст заданной команды. Самый молодой и самый пожилой участник соревнований.
20.
Создайте базу данных Любимые песни для анализа и обработки результатов опроса. Некоторая компания проводит опрос, чтобы выяснить спрос на свою продукцию: пластинки с песнями. Опрашиваемое население делится на 4 категории: согласно полу и возрасту (например, моложе или старше 20 лет). Каждый опрашиваемый должен назвать пять любимых песен. Песням ставятся в соответствие числа от 1 до N. Результаты опроса содержат: фамилию опрашиваемого, пол, возраст, пять любимых песен в порядке предпочтения. С помощью запросов определите:
Список песен в порядке их популярности. Каждый элемент этого списка содержит название песни и число упоминаний о ней.
Список песен, которые ни разу не упоминались.
Четыре отдельных списка, составленных по категориям.
Четыре списка с фамилиями отвечающих, которые назвали на первом месте одну из песен, наиболее популярных в их категории.
Список песен в порядке их популярности в данной категории.
21.
Создайте базу данных Рейтинг политиков для анализа и обработки результатов опроса общественного мнения. Опрашиваемое население делится на несколько категорий согласно полу, социальному положению и возрасту (моложе 20 лет, возраст которых от 20 до 40, от 40 до 60, старше 60). Каждый опрашиваемый должен назвать имена пяти политиков в порядке предпочтения. В базе данных хранится список фамилий политиков, популярность которых исследуется с помощью данного опроса. Результаты опроса содержат: фамилию опрашиваемого, пол, возраст, пять фамилий политиков. С помощью запросов определите:
Список фамилий политиков в порядке их популярности. Каждый элемент этого списка содержит фамилию политика и число упоминаний о нем.
Список фамилий политиков, которые ни разу не упоминались.
Списки, составленные для заданной категории опрашиваемых граждан.
Списка с фамилиями опрашиваемых, которые назвали на первом месте одного из политиков, наиболее популярных в их категории.
Список фамилий политиков в порядке их популярности в данной категории.
22.
Создайте базу данных Журнал самостоятельной работы в компьютерном классе. В таблице базы данных должна содержаться информация: номер записи, дата, фамилия студента, время начала и конца работы, номер компьютера. Постройте запросы, чтобы определить:
всех студентов, занимающихся в компьютерном классе в определенный день и в заданный интервал времени;
всех студентов, работающих в классе на заданном компьютере;
в какое время и на каких компьютерах работал определенный студент;
фамилии всех студентов, работающих более двух часов.
23.
Создайте базу данных Вакансия рабочих мест. В таблице базы данных должна содержаться информация: номер записи, требуемая специальность, образование кандидата, диапазон возраста, стаж работы, пол, минимум заработной платы Постройте запросы для определения:
какие требования предъявляются к кандидатам по выбранной специальности;
предлагаемых вакансий для кандидатов с заданным уровнем образования;
вакансий для людей определенного возраста;
вакансий, в которых не требуется стаж работы;
вакансий, в которых минимум заработной платы больше заданного значения.
24.
Создайте базу данных Журнала продаж абонементов а театр (Абонементы в театр). Журнал продаж содержит номер записи, дату продажи абонемента, номер абонемента и его стоимость. О каждом абонементе хранится информация: номер абонемента, название, количество спектаклей, даты спектаклей. С помощью запросов к базе данных определить:
номера абонементов, проданных в определенный день;
сколько абонементов заданного номера было продано в некоторый период:
самые популярные абонементы за рассматриваемый период:
день, в который было продано абонементов на максимальную сумму.
25.
Создайте базу данных Расписание занятий. В базе данных хранится информация: день недели, номер пары, часы занятий, название дисциплины, фамилия преподавателя, номер аудитории. С помощью запросов к базе данных определить:
расписание занятий в определенный день
в какие дни ведутся занятия по определенной дисциплине;
когда проводит занятия некоторый преподаватель;
какие занятия и кто проводит в определенной аудитории.
26.
Создайте базу данных Распределение педагогических поручений. В базе данных содержится информация: номер записи, название курса, фамилия преподавателя, дисциплина, курс, семестр, продолжительность курса в часах. С помощью запросов к базе данных определить:
какие преподаватели читают лекции по определенной дисциплине;
какие занятия проводит определенный преподаватель;
какие дисциплины преподаются на заданном курсе;
как занят некоторый преподаватель в определенный семестр.
27.
Создайте базу данных Зачетка студента. Экзамены. В базе данных содержится информация: номер курса, номер семестра, название дисциплины, фамилия преподавателя, оценка, дата сдачи. С помощью запросов к базе данных определить:
успеваемость студента, при обучении на заданном курсе;
успеваемость студента в определенном семестре;
семестры, в которых сдавались экзамены по заданной дисциплине;
все дисциплины, которые были сданы на оценку "отлично".
все дисциплины, которые сдавались определенному преподавателю.
28.
Создайте базу данных Журнал регистрации дипломных работ. В базе данных должна хранится информация: номер записи, дата защиты, фамилия студента, тема работы, фамилия руководителя, оценка руководителя, фамилия рецензента, оценка рецензента, оценка комиссии. С помощью запросов к базе данных определить фамилии студентов:
защитивших дипломные работы в определенный день;
руководителем которых был определенный преподаватель;
защитивших дипломную работу с заданной оценкой;
у которых оценки за дипломную работу, поставленные руководителем и рецензентом были различны.
у которых общая оценка за дипломную работу отличалась либо от оценки руководителя, либо от оценки рецензента.
29.
Создайте базу данных Учетная карточка студента. В базе данных должна хранится информация: номер курса, номер семестра, дисциплина, число часов, отметка о зачете, если предусмотрен, оценка за экзамен, если есть экзамен по курсу. С помощью запросов к базе данных определить
сколько экзаменов сдал студент за время обучения;
средний балл за время обучения;
дисциплины, по которым экзамен был сдан с оценкой "хорошо"
номер семестра, в котором успеваемость студента была наилучшей;
дисциплины, по которым был получен зачет.
30.
Создайте базу данных Аттестация студентов. В базе данных содержится информация: номер записи, фамилия студента, предметы с фамилиями преподавателей, отметки об аттестации. С помощью запросов к базе данных определить
фамилии студентов, которые аттестованы полностью;
фамилии студентов, не аттестованных более, чем по трем дисциплинам;
название дисциплины, по которой не аттестовано максимальное число студентов;
результаты аттестации по заданной дисциплине;
фамилии студентов, не аттестованных лишь по одной дисциплине.