p align="center">3.2 Структура информационных объектов базы данных Авторы |
№ | Название столбца | Тип | Ключ | | 1 | Автор | текстовый | | | 2 | Авт_знак | текстовый | | | 3 | Код_автора | счетчик | | | |
Заглавия |
№ | Название столбца | Тип | Ключ | | 1 | Заглавие | текстовый | | | 2 | Код_заглавия | счетчик | | | |
Вид_издания |
№ | Название столбца | Тип | Ключ | | 1 | Ви_издания | текстовый | | | 2 | На_какой_срок | числовой | | | 3 | Начисляемая_пеня | числовой | | | 4 | Код_вида_издания | счетчик | | | |
Издательства |
№ | Название столбца | Тип | Ключ | | 1 | Издательство | текстовый | | | 2 | Место_издания | текстовый | | | 3 | Код_издательства | счетчик | | | |
Издание |
№ | Название столбца | Тип | Ключ | | 1 | Код_вида_издательства | числовой | | | 2 | Код_автора | числовой | | | 3 | Заглавие | числовой | | | 4 | Библ_шифр | текстовый | | | 5 | Код_издательства | числовой | | | 6 | Год_издания | числовой | | | 7 | Аннотация | Поле MEMO | | | 8 | Код_издания | счетчик | | | |
Экземпляр |
№ | Название столбца | Тип | Ключ | | 1 | Код_издания | числовой | | | 2 | На_руках? | логический | | | 3 | Код_экземпляра | счетчик | | | |
Улицы |
№ | Название столбца | Тип | Ключ | | 1 | Улица | текстовый | | | 2 | Код_улицы | счетчик | | | |
Адрес |
№ | Название столбца | Тип | Ключ | | 1 | Улица | числовой | | | 2 | Дом | текстовый | | | 3 | Квартира | числовой | | | 4 | Код_адреса | счетчик | | | |
Читатели |
№ | Название столбца | Тип | Ключ | | 1 | Фамилия | текстовый | | | 2 | Имя | текстовый | | | 3 | Отчество | текстовый | | | 4 | Код_адреса | числовой | | | 5 | Телефон | текстовый | | | 6 | Номер_билета | счетчик | | | |
Ведомость |
№ | Название столбца | Тип | Ключ | | 1 | Код_читателя | числовой | | | 2 | Код_экземпляра | числовой | | | 3 | Дата_оплаты | дата/время | | | 4 | Заплачено | числовой | | | 5 | Код_ведомости | счетчик | | | |
Выдача |
№ | Название столбца | Тип | Ключ | | 1 | Номер_билета | числовой | | | 2 | Код_экземпляра | числовой | | | 3 | Дата_выдачи | дата/время | | | 4 | Когда_вернул | дата/время | | | 5 | Пеня | числовой | | | 6 | Заплатил_пеню? | логический | | | |
3.3 Связи между информационными объектами 4. Проектирование алгоритмов обработки данных |
Выбор книги | Книга на руках | Сдача книги | | Регистрация в библиотеке (если еще не зарегистрирован) Поиск книги в фонде Выбор найденной книги Занесение информации о взятой книги в карточку читателя Занесение в список информации, что книга на руках | Подсчет общей пени каждого читателя | Снятие книги с рук и отражение этого в списках Подсчет пени по данной книге (если такая имеется) Оплата пени | | Действия в течение года | | Формирование списка тех книг, которые на руках Добавление новых книг Списание старых книг Регистрация новых читателей | | |
5. Разработка запросов для корректировки и выборки данных
5.1 Запросы на выборку данных Пеня - запрос для расчета задолженности читателей по каждой книге. а) Данные из следующих таблиц должны быть включены в запрос: Авторы, Заглавия, Издание, Экземпляр, Вид_издания, Выдача, читатели.
б) структура связей между таблицами: ((Заглавия INNER JOIN (Вид_издания INNER JOIN (Авторы INNER JOIN Издание ON Авторы.Код_автора = Издание.Код_автора) ON Вид_издания.Код_вида_издания = Издание.Код_вида_издания) ON Заглавия.Код_заглавия = Издание.Заглавие) INNER JOIN Экземпляр ON Издание.Код_издания = Экземпляр.Код_издания) INNER JOIN (Читатели INNER JOIN Выдача ON Читатели.Номер_билета = Выдача.Номер_билета) ON Экземпляр.Код_экземпляра = Выдача.Код_экземпляра в) поля, включаемы в запрос: SELECT Читатели.Фамилия, Читатели.Имя, Читатели.Отчество, Авторы.Автор, Заглавия.Заглавие, Выдача.Дата_выдачи, Выдача!Дата_выдачи+ Вид_издания!На_какой_срок AS До_какого_числа, Выдача.Когда_вернул, (Выдача!Когда_вернул-(Выдача!Дата_выдачи +Вид_издания!На_какой_срок)) *Вид_издания!Начисляемая_пеня AS [Был долг], Выдача.Пеня AS Оплатить г) групповая операция: Читатели.Фамилия, Читатели.Имя, Читатели.Отчество, Авторы.Автор, Заглавия.Заглавие, Выдача.Дата_выдачи, Выдача!Дата_выдачи+Вид_издания!На_какой_срок, Выдача.Когда_вернул, (Выдача!Когда_вернул-(Выдача!Дата_выдачи +Вид_издания!На_какой_срок))*Вид_издания!Начисляемая_пеня, Выдача.Пеня д) условие отбора: ((([Выдача]![Пеня])<>0) AND ((([Выдача]![Когда_вернул]-([Выдача]! [Дата_выдачи]+[Вид_издания]![На_какой_срок])) *[Вид_издания]! [Начисляемая_пеня])>0)) ORDER BY Читатели.Фамилия, Читатели.Имя 10 новых книг - перечень 10 самых новых книг. 10 самых постоянных читателей - перечень 10 тех читателей, которые брали наибольшее количество книг. На_поиск_книги - запрос, необходимый для поиска (отбора) книги по необходимым параметрам. 5.2 Корректировка данных средствами запросов Подсчет пени: обновление данных о сумме задолженности, обновление данных о читателях, которые оплатили свою задолженность. Весь процесс можно описать в два шага. Шаг 1: Выполнение запроса Подсчет пени (1) |
Таблица Выдача | | Номер_билета Код_экземпляра Дата_выдачи Когда_вернул Пеня Заплатил_пеню? | | |
Страницы: 1, 2, 3
|