
2.3 Информация о животных
Основная и самая главная таблица в информационной системе зоопарка – это таблица «Животные», в которой указана полная информация о находящихся в зоопарке животных (вид животного, наименование, кличка, а также его рост, вес, возраст, пол и дата поступления в зоопарк). Для данной таблицы характерно наибольшее количество связей с другими таблицами. Так как для животных необходимо определенное кормление, контроль за здоровьем, необходимость различных типов животных в теплом помещении на зиму, а также учесть клетки, в которых находится каждое животное и т.д. Для корректного взаимодействия элементов между собой необходимо ввести в систему следующие таблицы: «Карточка прививок», «Карточка болезней», «Теплое помещение», «Кормление-1», «Кормление-2», «Вид животного», «Клетки животных», «Потомство». В итоге система будет выглядеть следующим образом:
2.4 Информация о потомстве
При определенных условиях у животных можно ожидать появление потомства. Потомство можно либо оставить в зоопарке, либо обменяться с другими зоопарками или просто раздать в другие зоопарки. Для получения информации о том, ожидается ли потомство, если ожидается, то куда его направят или же если оно останется в зоопарке, свяжем таблицу «Потомство» с таблицей «Зоопарки».
В конечном варианте система будет выглядеть так:
2.5 Информация о совместимости видов
Животных в зоопарке можно подразделить на хищников и травоядных. При расселении животных по клеткам необходимо учитывать не только потребности данного вида, но и их совместимость с животными в соседних клетках. Для контроля над расселением животных по видовой принадлежности добавляется таблица «Совместимость животных».
Полученная система таблиц будет выглядеть следующим образом:
3. Структура таблиц
Таблица 1 – Основные параметры структуры таблицы «Должность»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
КОД_ДОЛЖ |
Да |
Да (СНД) |
Числовой |
КОД_ДОЛЖ |
|
|
НАИМ_ДОЛЖ |
|
|
Текстовый |
НАИМ_ДОЛЖ |
|
|
ЗАР_ПЛАТА |
|
|
Текстовый |
ЗАР_ПЛАТА |
|
|
Таблица 2 – Основные параметры структуры таблицы «Животные»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_ЖИВ |
Да |
Да (СНД) |
Числовой |
НОМЕР_ЖИВ |
|
|
ВИД_ЖИВ |
|
|
Числовой |
ВИД_ЖИВ |
|
|
НАИМЕН_ЖИВ |
|
|
Текстовый |
НАИМЕН_ЖИВ |
|
|
КЛИЧКА_ЖИВ |
|
|
Текстовый |
КЛИЧКА_ЖИВ |
|
|
ПОЛ_ЖИВ |
|
|
Текстовый |
ПОЛ_ЖИВ |
|
|
ВОЗРАСТ_ЖИВ |
|
|
Текстовый |
ВОЗРАСТ_ЖИВ |
|
|
РОСТ_СМ |
|
|
Числовой |
РОСТ_СМ |
|
|
ВЕС_КГ |
|
|
Числовой |
ВЕС_КГ |
|
|
ДАТА_ПОСТУП |
|
|
Дата/время |
ДАТА_ПОСТУП |
|
|
Таблица 3 – Основные параметры структуры таблицы «Зоопарки»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_ЖИВ |
Да |
Да (СНД) |
Числовой |
НОМЕР_ЖИВ |
|
|
НАЗВ_ЗООПАРКА |
|
|
Текстовый |
НАЗВ_ЗООПАРКА |
|
|
ПЕРЕДАЧА |
|
|
Текстовый |
ПЕРЕДАЧА |
|
|
ДАТА_ОБМЕНА |
|
|
Дата/время |
ДАТА_ОБМЕНА |
|
|
ПОЛУЧЕН_ЖИВ |
|
|
Текстовый |
ПОЛУЧЕН_ЖИВ |
|
|
Таблица 4 – Основные параметры структуры таблицы «Вид животного»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
КОД_ВИДА |
Да |
Да (СНД) |
Числовой |
КОД_ВИДА |
|
|
ВИД_ЖИВ |
|
|
Текстовый |
ВИД_ЖИВ |
|
|
Таблица 5 – Основные параметры структуры таблицы «Карточка болезней животного»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_ЖИВ |
|
|
Числовой |
НОМЕР_ЖИВ |
|
|
БОЛЕЗНЬ |
|
|
Текстовый |
БОЛЕЗНЬ |
|
|
ДАТА_БОЛ |
|
|
Дата/время |
ДАТА_БОЛ |
|
|
Таблица 6 – Основные параметры структуры таблицы «Карточка прививок животного»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_ЖИВ |
|
|
Числовой |
НОМЕР_ЖИВ |
|
|
ПРИВИВКА |
|
|
Текстовый |
ПРИВИВКА |
|
|
ДАТА_ПРИВИВ |
|
|
Дата/время |
ДАТА_ПРИВИВ |
|
|
Таблица 7 – Основные параметры структуры таблицы «Клетки животных»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_КЛЕТКИ |
Да |
Да (СНД) |
Числовой |
НОМЕР_КЛЕТКИ |
|
|
НОМЕР_ЖИВ |
|
|
Числовой |
НОМЕР_ЖИВ |
|
|
Таблица 8 – Основные параметры структуры таблицы «Корма»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
ТИП_КОРМА |
Да |
Да (СНД) |
Текстовый |
ТИП_КОРМА |
|
|
НОМЕР_ПОСТАВЩ |
|
|
Числовой |
НОМЕР_ПОСТАВЩ |
|
|
КОЛ-ВО_КОРМА |
|
|
Текстовый |
КОЛ-ВО_КОРМА |
|
|
ЦЕНА_КОРМА_КГ |
|
|
Текстовый |
ЦЕНА_КОРМА_КГ |
|
|
ДАТА_ПОСТАВКИ |
|
|
Дата/время |
ДАТА_ПОСТАВКИ |
|
|
Таблица 9 – Основные параметры структуры таблицы «Кормление-1»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_ЖИВ |
Да |
Да (СНД) |
Числовой |
НОМЕР_ЖИВ |
|
|
ВИД_ЖИВ |
|
|
Текстовый |
ВИД_ЖИВ |
|
|
СЕЗОН |
|
|
Текстовый |
СЕЗОН |
|
|
В_ДЕТСК_ПЕР |
|
|
Текстовый |
В_ДЕТСК_ПЕР |
|
|
Таблица 10 – Основные параметры структуры таблицы «Кормление-2»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_ЖИВ |
Да |
Да (СНД) |
Числовой |
НОМЕР_ЖИВ |
|
|
ВИД_ЖИВ |
|
|
Текстовый |
ВИД_ЖИВ |
|
|
СЕЗОН |
|
|
Текстовый |
СЕЗОН |
|
|
ПИТ_В_ОСТ_ВР |
|
|
Текстовый |
ПИТ_В_ОСТ_ВР |
|
|
Таблица 11 – Основные параметры структуры таблицы «Поставщики»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_ПОСТАВЩ |
Да |
Да (СНД) |
Числовой |
НОМЕР_ПОСТАВЩ |
|
|
НАЗВ_ОРГАНИЗ |
|
|
Текстовый |
НАЗВ_ОРГАНИЗ |
|
|
ПОСТ_С |
|
|
Дата/время |
ПОСТ_С |
|
|
ПОСТАВ_ПО |
|
|
Дата/время |
ПОСТАВ_ПО |
|
|
Таблица 12 – Основные параметры структуры таблицы «Потомство»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НОМЕР_ЖИВ |
Да |
Да (ДС) |
Числовой |
НОМЕР_ЖИВ |
|
|
НОМЕР_ДЕТ |
Да |
Да (СНД) |
Числовой |
НОМЕР_ДЕТ |
|
|
ПАРА |
|
|
Текстовый |
ПАРА |
|
|
ПРИБЛИЗ_ДАТА |
|
|
Дата/время |
ПРИБЛИЗ_ДАТА |
|
|
Таблица 13 – Основные параметры структуры таблицы «Работают с животными»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
ТАБ_НОМЕР |
|
|
Числовой |
ТАБ_НОМЕР |
|
|
НОМЕР_ЖИВ |
|
|
Числовой |
НОМЕР_ЖИВ |
|
|
ДАТА_ПРИСТУП |
|
|
Дата/время |
ДАТА_ПРИСТУП |
|
|
Таблица 14 – Основные параметры структуры таблицы «Совместимость животных»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
КОД_ВИДА |
Да |
Да (СНД) |
Числовой |
КОД_ВИДА |
|
|
ВИД_ЖИВ |
|
|
Числовой |
ВИД_ЖИВ |
|
|
СОВМЕСТИМ |
|
|
Текстовый |
СОВМЕСТИМ |
|
|
Таблица 15 – Основные параметры структуры таблицы «Сотрудники»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
Таб_номер |
Да |
Да (СНД) |
Числовой |
Таб_номер |
|
|
ФИО |
|
|
Текстовый |
ФИО |
|
|
Пол |
|
|
Текстовый |
Пол |
|
|
Возраст |
|
|
Текстовый |
Возраст |
|
|
Стаж |
|
|
Числовой |
Стаж |
|
|
Код_долж |
|
|
Числовой |
Код_долж |
|
|
Таблица 16 – Основные параметры структуры таблицы «Теплое помещение»
Имя поля |
Ключевое поле |
Индексированное поле |
Тип данных |
Подпись данных |
Условие на значение |
Сообщение об ошибке |
НАИМЕН_ЖИВ |
Да |
Да (СНД) |
Текстовый |
НАИМЕН_ЖИВ |
|
|
ТЕПЛОЕ_ПОМ |
|
|
Текстовый |
ТЕПЛОЕ_ПОМ |
|
|
|
5. Запросы
5.1Список служащих зоопарка.
SELECT Сотрудники.Таб_номер, Сотрудники.ФИО, Сотрудники.Стаж, Сотрудники.Пол
FROM Сотрудники
WHERE (((Сотрудники.Стаж)>5) AND ((Сотрудники.Пол)="Ж"));
5.2Перечень работников, которые устроились работать в зоопарк, не достигнув 25-летнего возраста.
SELECT Сотрудники.Таб_номер, Сотрудники.ФИО, Сотрудники.Пол, Сотрудники.Возраст, Сотрудники.Стаж, [Возраст]-[Стаж] AS Выражение1
FROM Сотрудники
WHERE ((([Возраст]-[Стаж])<25));
5.3Потомство животных.
SELECT ЖИВОТНЫЕ.НОМЕР_ЖИВ, ЖИВОТНЫЕ.НАИМЕН_ЖИВ, ЖИВОТНЫЕ.ПОЛ_ЖИВ, ПОТОМСТВО.ПАРА, ПОТОМСТВО.ПРИБЛИЗ_ДАТА, ПОТОМСТВО.НОМЕР_ДЕТ
FROM ЖИВОТНЫЕ INNERJOIN ПОТОМСТВО ON ЖИВОТНЫЕ.НОМЕР_ЖИВ = ПОТОМСТВО.НОМЕР_ЖИВ
WHERE (((ПОТОМСТВО.ПРИБЛИЗ_ДАТА)>=[Возможное потомство в период с:] And (ПОТОМСТВО.ПРИБЛИЗ_ДАТА)<=[по:]))
ORDERBY ЖИВОТНЫЕ.НОМЕР_ЖИВ DESC;
5.4Перечень поставщиков кормов
SELECTПоставщики.НАЗВ_ОРГАНИЗ, Корма.ТИП_КОРМА, Корма.[КОЛ-ВО_КОРМА], Корма.ЦЕНА_КОРМА_КГ, Корма.ДАТА_ПОСТАВКИ
FROM Поставщики INNERJOIN Корма ONПоставщики.НОМЕР_ПОСТАВЩ = Корма.НОМЕР_ПОСТАВЩ
WHERE (((Корма.ТИП_КОРМА)=[Введите тип корма]) AND ((Корма.ДАТА_ПОСТАВКИ) Like "*.*.****"));
5.5Перечень животных по болезням и прививкам.
SELECT Животные.ВИД_ЖИВ, Животные.КЛИЧКА_ЖИВ, Животные.ПОЛ_ЖИВ, Животные.ВОЗРАСТ_ЖИВ, [Карточка прививок животного].ПРИВИВКА, [Карточка болезней животного].БОЛЕЗНЬ
FROM Животные INNER JOIN ([Карточка болезней животного] INNER JOIN [Карточка прививок животного] ON [Карточка болезней животного].НОМЕР_ЖИВ = [Карточка прививок животного].НОМЕР_ЖИВ) ON (Животные.НОМЕР_ЖИВ = [Карточка прививок животного].НОМЕР_ЖИВ) AND (Животные.НОМЕР_ЖИВ = [Карточка болезней животного].НОМЕР_ЖИВ)
WHERE ((([Карточка прививок животного].ПРИВИВКА)=[Ввдите название прививки])) OR ((([Карточка болезней животного].БОЛЕЗНЬ)=[Введите название болезни]));
5.6Служащие,ответственные за животных.
SELECT Сотрудники.Таб_номер, Сотрудники.ФИО, Сотрудники.Код_долж, Животные.НАИМЕН_ЖИВ, [Работают с животными].ДАТА_ПРИСТУП
FROM Сотрудники INNER JOIN (Животные INNER JOIN [Работают с животными] ON Животные.НОМЕР_ЖИВ = [Работают с животными].НОМЕР_ЖИВ) ON Сотрудники.Таб_номер = [Работают с животными].ТАБ_НОМЕР
WHERE (((Животные.НАИМЕН_ЖИВ)=[Введите наименование животного]));
5.7Общее число работников на каждой должности.
SELECT Должность.КОД_ДОЛЖ, Должность.НАИМ_ДОЛЖ, Count(Сотрудники.Код_долж) AS [Count-Код_долж]
FROM Должность INNER JOIN Сотрудники ON Должность.КОД_ДОЛЖ = Сотрудники.Код_долж
GROUP BY Должность.КОД_ДОЛЖ, Должность.НАИМ_ДОЛЖ;
6. Отчёты
6.1Перечень сотрудников по отделам (отрывок)
6.2 Медицинская карточка животных (отрывок)
7. Формы
7.1Должность (отрывок)
7.2 Поставщики (отрывок)