
- •Часть 1. Практические задания 2
- •Часть 2. Основы теории 37
- •Часть 1. Практические задания Общие указания по выполнению практикума
- •1. Базы данных ms Excel
- •I. Подготовительные действия
- •II. Простейшие запросы на выборку данных из списка (автофильтр)
- •III. Контрольное задание
- •V. Контрольное задание
- •2. Создание базы данных ms Access
- •I. Создание файла базы данных
- •I. Создание таблицы в режиме конструктора
- •II. Создание таблицы путем ввода данных
- •III. Создание таблицы бд путем импорта данных из таблицы ms Excel
- •I. Контрольное задание
- •3. Ввод, изменение, удаление и отображение данных
- •I. Использование режима таблица
- •II. Контрольное задание
- •4. Просмотр и выбор информации из таблиц
- •I. Использование режима «Таблица»
- •I. Контрольное задание
- •II. Использование мастера запросов для создания простых запросов на выборку
- •IV. Создание запросов на выборку в режиме конструктора
- •IV. Контрольное задание
- •5. Вычисления в ms access
- •Использование в запросах вычисляемых полей
- •Быстрый подсчет
- •Контрольное задание
- •Вычисления с группировкой значений
- •Использование мастера запросов для создания простых запросов с группированием данных
- •Вычисления с группировкой значений (Создание запросов с использованием конструктора)
- •VI. Контрольное задание
- •6. Подготовка отчетов
- •I. Формирование автоотчетов
- •II. Использование мастера отчетов
- •III. Использование конструктора отчетов
- •IV. Контрольное задание
- •7. Связывание таблиц
- •7.I. Связь 1:1
- •7.II. Связь 1:m
- •7.III. Связь m:n
- •Часть 2. Основы теории Некоторые термины и определения, используемые при работе с базами данных
- •Введение
- •Классификация бд
- •Классификация субд
- •Модели представления данных
- •Иерархическая модель
- •Сетевая модель
- •Реляционная модель Определение
- •Груз (Номер, Тип, Вес, Трюм, Код)
- •Операция связывания
- •Связь вида 1:1
- •Связь вида 1:м
- •Связь вида m:n
- •Ссылочная целостность реляционной базы данных
- •Основные стратегии поддержания ссылочной целостности
- •Постреляционные модели данных
7.III. Связь m:n
Связь вида M:N может быть установлена тогда, когда нескольким записям в одной таблице соответствует несколько записей в другой таблице.
В режиме конструктора создайте
таблицу «Бригада» со следующими полями:
Nr – числовое – Номер бригады рабочих (первичный ключ);
Name - текстовое (50 символов) – Фамилия бригадира.
таблицу «Расписание» со следующими полями:
Hold – числовое – Номер трюма (элемент составного ключа отношения);
Team_Nr - числовое – Номер бригады рабочих (элемент составного ключа отношения)
ВНИМАНИЕ! Для того чтобы объявить, что в таблице «Расписание» используется составной ключ, Выделите первую строку таблицы конструктора, затем выделите вторую строку при нажатой клавише “CTRL” и, затем, нажмите на кнопку с изображением ключа на панели инструментов
Откройте окно «Схема данных». В окне «Схема данных» выполните команду Связи|Добавить таблицу и в диалоговом окне укажите таблицы «Бригады», «Расписание» и «Размерения», Закройте окно «Добавление таблицы». Расположите макеты таблиц таким образом чтобы связи между таблицами были видны и не закрывались другими таблицами.
Установите связь между полями [Расписания.Hold] и [Размерения.Hold], а также между полями [Расписания.Team_Nr] и [Бригады.Nr] . Не забудьте устанавливать отметки, необходимые для обеспечения проверки целостности базы данных. Закройте окно «Схема данных»
Введите в таблицы «Бригады» и «Расписание» следующие записи (Рисунок 11)
-
Рисунок 11
Nr
Name
1
Петров
2
Иванов
3
Сидоров
Hold
Team_Nr
1
1
1
2
2
3
3
3
4
2
Попробуйте ввести в таблицу «Расписание» следующие записи (Рисунок 12) . Будьте готовы дать пояснения к результатам выполнения этой операции
Рисунок 12
Hold |
Team_Nr |
5 |
1 |
1 |
4 |
4 |
3 |
Выполните команду создания нового запроса при помощи конструктора. Укажите, что запрос будет строиться на основании данных таблиц «Бригады», «Расписание» и «Размерения». В верхней строке таблицы формирования запроса укажите поля, которые следует использовать в запросе: [Расписание.Hold], [Расписание.Team_Nr] и [Бригады.Name].
Выполните запрос. Обратите внимание на то, что при помощи дополнительной таблицы «Расписание» реализована связь вида M:N между таблицами «Размерения» и «Бригады». Эта связь использована для построения запроса.
Сохраните запрос под названием «Расписание работы»
КОНТРОЛЬНОЕ ЗАДАНИЕ
================== Обязательные для выполнения задания ==================
Создайте следующие таблицы
[Опасные грузы](Code, Description)
[Виды груза](Type, Description),
где [Опасные грузы].Code – код опасного груза (первичный ключ)
[Опасные грузы].Description – текстовое описание опасного груза (например, “взрывоопасный” или “кислота”)
[Виды груза].Type – вид груза (первичный ключ) - 20”, 40”, R20”
[Виды груза]. Description – название типа груза (например, “Контейнер 20 фут”)
Введите в созданные таблицы такое количество записей, чтобы обеспечить возможность связывания этих таблиц с таблицей «Каргоплан»
Установите связи между таблицами Каргоплан.Тип - [Виды груза].Type, Каргоплан.Код - Опасные грузы].Code с обеспечением проверки целостности связей
Создайте отчет «#Опасный груз» в котором должны быть перечислены сведения грузовых единицах на борту судна (номер, вес и полное название вида груза) с опасным грузом (код груза больше нуля). Эти сведения должны быть сгруппированы по портам назначения (в отчете должны выводиться полные названия портов), а внутри этих групп по трюмам, в которых они расположены. Для грузовых единиц с одним кодом опасного груза, расположенных в одном трюме, должен быть подсчитан общий вес и их количество, а также указан код груза и его описание. Заголовок отчета - «т/х Выборг» (первая строка), «Порты назначения опасных грузов» (вторая строка)
Указание. Для создания отчета предварительно сформируйте соответствующий запрос с использованием связей между таблицами.
================== Дополнительные задания ==================
Рассчитайте моменты веса груза в каждом трюме судна
Указание. Момент веса какого-либо груза рассчитывается как произведение веса груза на плечо (расстояние центра тяжести груза от начала координат). Суммарный вес груза в трюме можно получить, используя запрос, построенный на базе таблицы «Каргоплан». Расстояния от начала координат до геометрического центра каждого трюма даны в таблице «Размерения»
Рассчитайте координату центра тяжести груза судна вдоль продольной оси судна
Указание. Центр тяжести системы из N грузов массой M1, M2,…Mn, расположенных в координатах X1, X2,…Xn (рисунок 3),
можно рассчитать по следующей формуле:
Xo = (X1*M1+X2*M2+…+Xn*Mn) / (M1+M2+…+Mn) (1)
Для того, чтобы центр тяжести судна рассчитать при помощи формулы (1), мы должны представить что грузы, показанные на рисунке 2, расположены в геометрическом центре каждого из трюмов судна и их вес равен сумме весов грузов в этом трюме (точнее в трюме, твиндеке и на крышке этого трюма). Веса грузов по трюмам и их моменты рассчитаны в предыдущем контрольном задании.
Воспользуйтесь, запросом, подготовленным в предыдущем контрольном задании и рассчитайте Хо.
Рассчитайте координату центра тяжести загруженного судна вдоль продольной оси судна
Указание. Для решения задачи используйте координату центра тяжести груза , и суммарный вес груза, полученные в предыдущем задании, а также координату центра тяжести и вес порожнего судна, содержащиеся в таблице «Судно».