Проектирование базы данных 'Библиотека'
1.Информационная система библиотеки
инфологический информационный запрос
база данные
Библиотека включает в себя абонемент, читальный
зал и справочную систему каталогов и картотек.
Читатели библиотеки имеют право получать книги и
другие источники информации на всех пунктах выдачи библиотеки (абонемент и
читальный зал), а также получать необходимые издания по межбиблиотечному
абонементу, сделав предварительно заказ. Читатели, приходящие на пункт выдачи,
обязаны иметь при себе читательский билет с отметками о записи и
перерегистрации текущего года на данном пункте выдачи.
За нарушение правил пользования библиотекой
читатели лишаются права пользования всеми пунктами обслуживания библиотеки на
установленные администрацией сроки (от 1 до 6 месяцев). В случае утери или
порчи книг читатель обязан заменить их такими же или другими изданиями,
признанными библиотекой равноценными, или же возместить их 10-кратную
стоимость. В случае невозвращения в библиотеку книг в установленный срок,
читатель обязан заплатить штраф.
Срок пользования литературой для читателей - 1
месяц, количество выдаваемых изданий не ограничивается.
. Построить инфологическую модель БД;
. Создать таблицы (7 и более);
. Заполнить таблицы произвольными
данными;
. Составить запросы по Выборке информации
из таблиц.
информационной
системы проектирование библиотека
2. Инфологическая модель
информационной системы
Рис
Создание таблиц на SQL:
create table абонемент
(id_книги
varchar(6),
автор varchar
(20),
название varchar
(50),
год_издания int,
количество int)
create
table выданные_книги
(id_читателя
varchar(6),_книги varchar(6),
дата_выдачи datetime,
выдано_до datetime)
create
table
лишение_права_пользования_библиотекой
(id_читателя
varchar(6),
лишен_с datetime,
лишен_до datetime)
create
table
межбиблиотечный_абонемент
(id_книги varchar(6),
автор varchar(20),
название varchar(50),
год_издания int,
дата_заказа datetime,
дата_получения datetime,
дата_возврата datetime)
create
table утерянные_книги
(id_книги
varchar(6),
возмещено_в_размере decimal(6,2))
create table хранилище
(id_книги varchar(6),
ряд_номер int,
стелаж_номер int,
полка_номер int)
create
table читальный_зал
(id_книги varchar(6),
автор varchar(20),
название varchar(50),
год_издания int,
количество int)
create
table читатели
(id_читателя
varchar(6),
фамилия varchar(20),
имя varchar(20),
запись_на_абонемент varchar(3),
запись_в_читальный_зал varchar(3),
штрафы decimal(6,2))
Заполнение таблиц произвольными значениями
Таблица. Абонемент
Таблица. Выданные книги
Таблица. Лишение права пользования библиотекой
Таблица. Межбиблиотечный абонемент
Таблица. Утерянные книги
Таблица. Хранилище
Таблица. Читальный зал
Таблица. Читатели
.Составление запросов по выборке
информации из таблиц базы данных
Выбрать читателей, лишенных права пользования
библиотекой.
Таблица
Таблица
Получить список утерянных книг.
Таблица
Таблица
Выбрать выданные книги на абонемнете.
Таблица
Вычислить общую сумму возмещения утерянных книг.
Таблица
Получить минимальную сумму
возмещения.
Таблица
Выдать максимальный штраф.
MAX(dbo.читатели.штрафы) as 'максимальная сумма
штрафа'dbo.читатели
Таблица
Получить количество читателей
библиотеки.
COUNT(dbo.читатели.id_читателя) as 'кол-во
читателей'dbo.читатели
Таблица
Отсортировать список читателей
по фамилии от А до Я
dbo.читатели.фамилия,
dbo.читатели.имяdbo.читателиby dbo.читатели.фамилия
Таблица
Отсортировать список читателей
по фамилии от Я до А
dbo.читатели.фамилия,
dbo.читатели.имяdbo.читателиby dbo.читатели.фамилия desc
Таблица
Выбрать читателей, которым были выданы книги с
12.05.2013 п 24.05.2013
Таблица
Выбрать место в хранилище всех книг, кроме
межбиблиотечного абонемента.
Таблица
Выбрать название книг на межбиблиотечном
абонементе, полученных позже 17.01.2013
Таблица
Выбрать читателей со штрафом
менее 100
Таблица