Отмена привилегий и удаление пользователей
Для отмены привилегий пользователя применяется оператор revoke. Его синтаксис очень похож на синтаксис оператора GRANT с той лишь разницей, что предложение ТО заменено на предложение FROM, а предложения IDENTIFIED BY и WITH GRANT OPTION отсутствуют вовсе:
REVOKE privileges (columns) ON what FROM user
Часть user этого оператора должна соответствовать части user исходного оператора GRANT для пользователя, привилегии которого отменяются. Часть privileges необязательно должна соответствовать ранее определенным привилегиям. Пользуясь оператором revoke, можно отменить только некоторые из привилегий, предоставленные оператором GRANT.
Оператор revoke применяется для отмены привилегий, но не для удаления пользователей. В таблице user все равно остается запись для пользователя, даже если все привилегии для него сняты. Это означает, что пользователь все еще имеет возможность подключаться к серверу. Для полного удаления пользователя необходимо явным образом удалить его запись из таблицы user. Для этих целей применяется оператор DELETE:
% mysql -u root mysql
mysql> DELETE FROM user WHERE User = "user_name" and Host = "host_name";
mysql>FLUSH PRIVILEGES;
Задание 1
Работа локально
1. Проверить отсутствие пользователя ‘’@localhost на сервере.
2. Создать учетные записи для двух пользователей, заходящих с любого компьютера локальной сети, с такими привилегиями:
a) Пользователь US1 (пароль uzaba) получает привилегии на добавление, редактирование, удаление всех полей таблицы dl_category для баз данных db_utf8, db_cp1251.
b) Пользователь US1 (пароль тот же) получает привилегии чтения всех таблиц баз данных db_utf8, db_cp1251.
a) Пользователь read (пароль readb) получает привилегии чтения всех таблиц баз данных db_utf8, db_cp1251.
b) Пользователь sman (пароль sales) получает привилегии на добавление, редактирование, удаление всех полей таблиц `orders`, `orderdetails`, `customers`, `employeeterritories`, `order details`, `customercustomerdemo`, `customerdemographic`.
c) Пользователь sman (пароль тот же) получает привилегии чтения всех таблиц базы данных northwind.
3. Получить всю информацию из таблиц user, db, host, privileges, связанную с этими новыми пользователями, написав соответствующие запросы.
4. Проверить работоспособность созданных учетных записей, выполняя разрешенные и запрещенные действия для каждой учетной записи.
Работа с сетевым сервером БД
Задание 2
1. Предоставить привилегию пользователю userYY (пустой пароль), где YY-ваш номер по журналу, все привилегии доступа, включив доступ на сервер локально.
2. Проверить работоспособность созданных учетных записей, выполняя разрешенные и запрещенные действия для учетной записи userYY.
Задане 3
Для базы данных вашого варианта создать пользователей и задасть им привилегии.
Контрольные вопросы
1. Кто является владельцем базы данных?
2. Какими правами обладают другие пользователи по отношению к Вашей базе данных?
3. Какими правами обладает администратор базы данных по отношению к Вашей базе данных?
4. Каким образом предоставляются права на пользование базой данных и отдельными ее таблицами?
5. Каким образом изымаются права на пользование базой данных и отдельными ее таблицами?
Варианты заданий предметных областей для создания баз данных
Вариант 1
Спроектировать базу данных для работников библиотеки. В БД должны храниться сведения об имеющихся в библиотеке книгах, о читателях библиотеки и читальных залах.
Для каждой книги в БД должны храниться сведения об авторе, названии, годе издания и числе экземпляров, имеющихся в каждом зале библиотеки, а также шифр книги и дата закрепления книги за читателем. Сведения о читателях библиотеки должны включать фамилию, номер телефона и уникальный номер читательского билета. Читатели закрепляются за определенным залом и могут записываться и выписываться из библиотеки. Библиотека имеет несколько читальных залов, которые характеризуются номером, названием и вместимостью. Библиотека может получать новые книги и списывать старые. Шифр книги может изменяться в результате переклассификации.
Библиотекарю могут потребоваться следующие сведения о текущем состоянии библиотеки:
- какие книги закреплены за читателем;
- как называется книга с заданным шифром;
- какой шифр у книги с заданным названием;
- когда книга была закреплена за читателем:
- какое число читателей пользуется библиотекой.
Библиотекарь может вносить следующие изменения:
- запись нового читателя в библиотеку;
- списывание старой книги;
- изменение шифра книги.
Необходимо предусмотреть возможность выдачи справки о количестве книг определенного автора в читальном зале и отчета о работе библиотеки в течение месяца (общее количество читателей, количество записавшихся в этот месяц, какие книги и сколько раз были взяты, кто из читателей не брал книг в этот месяц).
Вариант 2
Спроектировать базу данных комнатных растений.
Для каждого комнатного растения в БД должны храниться сведения: название растения, к какому классу оно относится, возраст, благоприятное время пересадки, время подкормки и тип подкормки (для каждого класса), тип почвы для растения, водяной режим для каждого времени года. Возможно введение народного названия растения с последующей заменой его на общепринятое. Необходимо предусмотреть возможность замены некоторого типа подкормки более новым. БД должна содержать сведения о помещении: тип помещения и рекомендуемое место для размещения каждого растения. В ВД может быть добавлена информация о новом растении.
Могут потребоваться следующие сведения:
- какой рекомендуемый водяной режим у заданного растения летом;
- какие растения можно держать в комнате с северной стороны на окне;
- какие растения, цветущие в мае, неприхотливы к воде летом
- в какое, время необходимо вносить заданную подкормку для указанного растения;
- когда необходимо пересадить указанное растение заданного возраста.
Возможны следующие изменения в ВД:
- добавление информации о новом растении;
- отказ от старого типа подкормки;
- замена названия растения.
Необходимо предусмотреть возможность выдачи справки о времени и типе подкормки для заданного растения и отчета о растениях указанного класса (их количество в БД, название каждого растения, водяной режим, время пересадки и цветения).
Вариант 3
Спроектировать базу данных для завуча школы.
Для каждого учителя в ВД должны храниться сведения о предметах, которые он преподает, номере кабинета, который за ним закреплен, номерах классов, в которых он ведет занятия, номере урока и дне, когда он ведет уроки. Существуют учителя, которые не имеют собственного кабинета. Об учениках должны храниться следующие сведения: фамилия и имя, в каком классе учится, какая оценка по каждому предмету получена.
Ученик может исправить полученную оценку. Завуч может добавить информацию о новом учителе или ученике, а также удалить о выбывших.
Завучу могут потребоваться следующие сведения:
- какой предмет будет в заданном классе, например, во вторник на заданном уроке;
- кто из учителей преподает в заданном классе;
- в каком кабинете будет 5-й урок в среду у некоторого класса;
- в каких классах преподает определенный учитель заданный предмет;
- расписание на заданный день недели для класса.
Завуч может вносить следующие изменения:
- ввести информацию о новом учителе;
- удалить запись об ученике;
- изменить оценку ученику.
Необходимо предусмотреть возможность выдачи справки о количестве учеников, в данном классе и отчета о работе школы (количество учителей по предметам, количество кабинетов, число учеников в каждом классе, число учащихся на 2, 4-5, 5 по классам и по школе).
Вариант 4
Спроектировать базу данных, для организаторов выставки собак. В БД должны храниться сведения об участниках выставки и экспертах.
Для каждого участника в БД должны храниться сведения, о том, из какого клуба участник, кличка, порода и возраст собаки, ^сведения о родословной (отец и мать собаки). Участник может перейти из одного клуба в другой. На каждый клуб отводится участок номеров, под которыми будут выступать участники выставки. Сведения об экспертах должны включать ФИО, номер ринга, который он обслуживает; клуб, в котором он состоит. Каждый ринг могут обслуживать несколько экспертов. Каждая порода собак выступает на своем ринге. Эксперт может отказаться от судейства, тогда возможно введение нового эксперта. Также должны храниться сведения о медалистах по каждой породе. Могут потребоваться следующие сведения;
- на каком ринге выступает заданный участник со своей собакой;
- какими породами представлен заданный клуб;
- какие медали и сколько заслужены клубом;
- какие эксперты обслуживают породу;
- какая собака у заданного эксперта.
Администратор БД может вносить следующие изменения.
- переход участника из одного клуба в другой;
- снятие эксперта с судейства на ринге;
- назначение нового эксперта на судейство.
Необходимо предусмотреть возможность выдачи справки о занятии участником призового места на выставке и отчета о выступлении клуба (сколько участников, какие породы, информация о победителях по породам).
Вариант 5
Спроектировать базу данных для приемной комиссии. В БД должны храниться сведения об абитуриентах, датах экзаменов и консультаций, номерах аудиторий.
Для каждого абитуриента в БД должны храниться сведения об абитуриенте, номере экзаменационного листа, который он получает, о кафедре и факультете, куда он собирается поступать, о номере группы и потоке, в котором он будет сдавать экзамен (группы объединены в потоки, по 3-4 группы на поток); оценка по каждому предмету, которая может быть изменена на апелляции. Абитуриенты могут подавать и забирать документы, а также перевести их на другую кафедру. Также должны храниться даты консультаций и экзаменов по предметам для каждого потока и номера аудиторий. Могут потребоваться сведения:
- список абитуриентов на заданный факультет:
- полученные оценки для абитуриента;
- дата консультации и экзамена для абитуриента по данному предмету;
- номера аудиторий, где будут экзамены у заданной группы:
- список групп, которые будут заниматься в заданной аудитории в заданное время.
Администратор БД может вносить следующие изменения:
- ввести информацию о новом абитуриенте;
- изменить оценку абитуриенту;
- удалить запись об абитуриенте.
Необходимо предусмотреть возможность выдачи справки о том, что данный абитуриент поступает в институт на факультет, и отчета о работе приемной комиссии факультета (количество поступающих, на какие кафедры и сколько, количество абитуриентов в каждой группе, в какие дни и где проводятся экзамены, сколько сдало на 2,3,4,5 по предметам).
Вариант 6
Спроектировать базу данных для почтовых работников. В БД должны храниться сведения о газетах, почтовых отделениях, получающих газеты, о типографиях, выпускающих газеты. Сведения о газетах должны включать в себя: название газеты, шифр издания (может быть изменен), цену экземпляра газеты, ФИО редактора, номера типографий, где печатается эта газета. Возможно появление новых газет. Для типографий: адрес типографии, количество газет данного наименования, печатающихся в этой типографии (в одной типографии 'может печататься несколько газет). Типография может быть закрыта. Для почтового отделения: адрес отделения, название и количество экземпляров, поступающих на каждое почтовое отделение.
Работникам может потребоваться следующая информация:
- по каким адресам печатаются газеты данного наименования:
- какая фамилия у редактора газеты, которая •печатается в указанной типографии самым большим тиражом;
- на какие почтовые отделения (адреса) поступает газета, имеющая цену больше указанной;
- какие газеты и куда (номер почты) поступают в количестве
- меньшем, чем заданное;
- на какую почту поступает данная газета, печатающаяся по данному адресу типографии.
Работник может вносить следующие изменения:
- добавить информацию о новой газете,
- изменить цену газеты;
- удалить информацию о типографии.
Необходимо предусмотреть возможность выдачи справки об индексе и цене данной газеты и отчета о работе типографии (общее количество газет, печатающихся в ней, название, индекс и количество экземпляров для каждой газеты, ФИО редактора).
Вариант 7
Спроектировать базу данных для директора птицефермы. В БД должны храниться информация об имеющихся на ферме курах и о работниках фермы.
О каждой курице в ВД должна храниться следующая информация: вес, возраст, порода, количество, яиц, получаемое от курицы, а также информация о местонахождении курицы. Сведения о породе включают в себя: название, средние производительность и вес, номер рекомендованной диеты. Птицефабрика имеет несколько цехов, и за каждой курицей закреплена отдельная клетка. Код клетки, где находится курица, характеризуется номером цеха, номером ряда в цехе и номером в ряду. О работниках фермы в ВД должна храниться следующая информация: ФИО, коды клеток, которые закреплены за работником, зарплата.
При работе с БД могут потребоваться сведения:
- какое количество яиц получают от курицы данного веса, породы, возраста;
- в каком цехе наибольшее количество кур определенной породы,
- в каких клетках сидят двухлетние куры с диетой номер 2-,
- сколько яиц в' день приносят куры указанной работницы;
- в каком цехе находится клетка, из которой получают больше всего яиц.
Администратор ВД может вносить следующие изменения:
- добавление информации о новой курице;
- изменение БД в связи с увольнением работника;
-изменение веса курицы.
Необходимо предусмотреть возможность выдачи справки о номере диеты для курицы указанной породы и отчета о работе птицефабрики (общее количество кур, сколько кур и их средняя производительность для каждой породы, общее количество яиц, получаемое птицефабрикой, число работниц на фабрике и распределение их по цехам).
Вариант 8
Спроектировать базу данных, построить программу для коллекционера марок, собирающего тематическую коллекцию. В БД должны храниться сведения о марках, имеющихся в коллекции, и сведения об их положении в коллекции.
Сведения о марках должны включать в себя: номер марки, страну выпуска марки, номер серии, тему серии, год выпуска, цвет марки,
размер марки, цену марки, тему марки. Марки расположены в коллекции по темам. Сведения о положении марки в коллекции включают в себя: номер раздела коллекции (разбит на тома по темам и странам), в котором хранится марка, номер тема, номер страницы и уникальное положение марки на странице. Возможно открытие новых или закрытие старых тем. Место расположения марки может измениться.
Коллекционеру могут потребоваться следующие сведения;
- марки каких стран содержатся в данном разделе;
- в каком томе коллекции находится марка определенной серии;
- в каких местах коллекции находятся марки указанной темы;
- какие темы у серий, включающих марки определенного размера;
- марка какой страны находится в данном месте.
Коллекционер может вносить следующие изменения:
- добавление марки новой темы;
- удаление всех марок одной темы;
- изменение места расположения марки в коллекции.
Необходимо предусмотреть возможность выдачи справки о странах, чьи марки находятся в данной теме, и отчета по коллекции (количество и названия тем и стран по разделам, количество марок каждой страны для каждой темы, количество страниц в коллекции).
Вариант 9
Спроектировать базу данных, для работников управления торговли. В БД хранятся сведения о магазинах города; товарах, имеющихся в магазинах; о торговых базах и товарах, хранящихся на базах. Каждый магазин закреплен за одной торговой базой. Магазин характеризуется классом, номером и имеет несколько отделов. Каждый товар в каждом магазине продается, по крайней мере, в одном отделе. Каждый отдел имеет одного заведующего отделом. Товары, имеющиеся в магазине и хранящиеся на базах, характеризуются ценой, сортом и количеством. Розничные цены в магазине зависят от класса магазина и сорта товара и могут изменяться. Магазин может открыть новый отдел или закрыть старый. В этом случае товар передается в другие отделы.
При работе с БД могут потребоваться следующие сведения:
- какие товары имеются в магазине (на базе);
- какие отсутствующие товары может заказать магазин на базе;
- какие товары и в каком количестве имеются в отделе магазина;
- список заведующих отделом магазина;
- в каких отделах магазина продается одинаковый товар.
Администратор БД может вносить следующие изменения:
- закупка нового товара;
- закрытие отдела в магазине;
- изменение цены товара.
Необходимо предусмотреть возможность выдачи справки о наличии товаров в отделе магазина и отчета по магазину (количество и наименование товаров в отделах, ФИО заведующих отделами, номер базы, за которой закреплен магазин).
Вариант 10
Спроектировать базу данных для диспетчера автобусного парка. В БД хранятся сведения о водителях, маршрутах автобусов и характеристиках автобусов.
Каждый водитель характеризуется: ФИО, классом, стажем работы и окладом, причем оклад зависит от его класса и стажа работы. Маршрут автобуса характеризуется : номером маршрута, временем начала и конца движения, интервалом движения и протяженностью. Характеристиками автобусов являются: номер автобуса, его тип и вместимость, причем вместимость автобуса зависит от его типа (каждый водитель закреплен за отдельным автобусом, а каждый автобус прикреплен к определенному маршруту. Необходимо предусмотреть возможность корректировки БД в случаях поступления на работу нового водителя, списывания старого автобуса, введения нового или изменения старого маршрута и т.п.
Диспетчеру автопарка могут потребоваться следующие сведения:
- список водителей, работающих на определенном маршруте,
- какие номера автобусов обслуживают данный маршрут,
- когда начинается или заканчивается движение автобусов на всех или отдельных маршрутах,
- какова протяженность всех или определенных маршрутов автобусов,
- на каких автобусах работает водитель.
Диспетчер может вносить следующие изменения:
- прием на работу нового водителя
- списание старого автобуса;
- изменение протяженности маршрута..
Необходимо предусмотреть возможность выдачи справки о протяженности маршрута и отчета по автопарку (количество автобусов и их тип, номера маршрутов, время начала движения и интервал, ФИО водителей и их класс):
Вариант 11
Спроектировать базу данных, для работников ремонтного предприятия. Предприятие ремонтирует изделия, состоящие из конструктивных узлов. Ремонт заключается в изготовлении и замене изношенных деталей в узлах. В БД должны храниться сведения о деталях: обозначение, наименование, тип заготовки (может бить несколько), из которой деталь может быть сделана, вид материала, из которого сделана деталь, расход материала и время ее изготовления, (зависят от типа заготовки) Кроме того, в БД хранятся описания узлов: обозначение, список и количество деталей, содержащихся в узле, допустимый процент износа каждой детали и время ее замены. Ремонтируемое изделие характеризуется названием, перечнем изношенных деталей в узлах и процентом их фактического износа.
При работе с БД могут потребоваться следующие сведения:
- какое количество материала потребуется для изготовления заменяемых деталей определенного обозначения, входящих в данный узел и имеющих определенный тип заготовки:
- какой узел имеет наибольшее количество изношенных деталей определенного типа;
- какой тип заготовки обеспечивает минимальный расход материала для деталей заданного обозначения:
- сколько времени потребуется на ремонт изделия;
Администратор БД может вносить следующие изменения:
- добавление информации о новом узле;
- удаление информации о ремонтируемом изделии;
- изменение типа заготовки детали.
Необходимо предусмотреть возможность выдачи справки о количестве указанной детали в узле и отчета о работе предприятия (название и количество ремонтируемых изделий, время ремонта каждого изделия, список замененных деталей и расход материала при . ремонте изделия).
Вариант 12
Спроектировать базу данных, для работников справочной службы кинотеатров города.
В БД должны храниться сведения о кинотеатрах: название, район города, где расположен кинотеатр, категория (может быть изменена), вместимость (определяется категорией); о фильмах: название, производство, режиссер, жанр; кроме того, должна храниться информация о цене билета, количестве свободных мест на данный сеанс. На разных сеансах в одном кинотеатре могут идти разные фильмы. Кинотеатр может ввести новый фильм в репертуар или снять старый с проката. Цена билета определяется прокатной стоимостью (названием) фильма и категорией кинотеатра.
Справочной службе могут потребоваться следующие сведения о текущем состоянии проката фильмов в городе:
- репертуар кинотеатра (по названию кинотеатра );
- адрес и район кинотеатра (. по названию кинотеатра };
- число мест (свободных) на данный сеанс (название кинотеатра и сеанс );
- цена билетов на данный сеанс (название кинотеатра и сеанс),
- жанр, производство и режиссер данного фильма (по названию);
- вместимость данного кинотеатра (по названию, кинотеатра).
Администратор БД может вносить следующие изменения:
- открытие нового кинотеатра;
- снятие фильма с проката:
- изменение репертуара, кинотеатра.
Необходимо предусмотреть возможность выдачи .справки о сеансе фильма в указанном кинотеатре и отчета о прокате фильмов в районах города (названия фильмов, в каких кинотеатрах они демонстрировались, цена билета в каждом кинотеатре на них).
Вариант 13
Спроектировать базу данных, для администратора футбольной команды. В БД должны храниться сведения о командах, участвующих в первенстве, и об игроках, играющих в данной команде, стадионах, на которых проходят встречи, и цене билета на игры.
Сведения о команде представляют собой название команды, город, где она базируется, ФИО тренера, даты встреч команды, счет встреч, противников команды, стадион, на котором играет команда, место в таблице прошлого сезона. Сведения об игроках включают в себя ФИО игроков, их номера, результативность данного игрока в данной встрече. В один день команда может играть только в одном матче. Сведения о стадионе содержат: название, город, вместимость . Цена билета на матч зависит от вместимости стадиона и положения команды в прошлом году (наибольшая - при игре тройки призеров, наименьшая - при игре тройки аутсайдеров). Игроки могут переходить из одной команды в другую. Некоторые встречи \ могут быть перенесены.
Администратору могут потребоваться следующие сведения:
- даты встреч команды, ее противники и счет,
- ФИО и номера игроков, участвовавших во встрече (по названию команды, городу и дате встречи);- результативность данного игрока в данной встрече ( по названию команды, городу, дате встречи и ФИО игрока );
- цена, билета на матч указанных команд.
Администратор БД может вносить следующие/изменения:
- переход игрока из одной команды в другую:
- отмена встречи,
-назначение нового тренера.
Необходимо предусмотреть возможность выдачи справки об играх на указанном стадионе и отчета о проведенных играх (количество проведенных встреч, число побед хозяев и гостей, ФИО игроков, забивавших мячи в каждой команде, названия стадионов, где проводились встречи)
Вариант 14
Спроектировать базу данных, для работников регистратуры поликлиник.
В БД должны храниться сведения о больных: ФИО, адрес, диагноз (может быть уточнен), дата заболевания; сведения о врачах: ФИО, номер кабинета, номер участка, дни и часы приема, описание болезней: название (диагноз), симптомы, лекарство, возможно появление новых больных. Врач может уволиться из поликлиники.
Работникам регистратуры могут потребоваться следующие сведения:
- адрес, дата заболевания, диагноз данного больного;
- ФИО лечащего врача данного больного;
- номер кабинета, дни и часы приема данного врача;
- больные, находящиеся на лечении у данного врача;
-симптомы данного заболевания и рекомендуемое лекарство.
Администратор БД может вносить следующие изменения:
- появление нового больного;
- увольнение врача;
- изменение диагноза.
Необходимо предусмотреть возможность выдачи справки о болезни некоторого больного и отчета о работе поликлиники (количество больных, ФИО каждого врача и число лечащихся у него больных, количество заболеваний по каждому виду болезни, расписание работы врачей поликлиники).
Вариант 15
Спроектировать базу данных, для диспетчера станции техобслуживания.
В БД должны храниться сведения о владельцах автомобилей: ФИО, адрес, марка автомобиля, номер госрегистрации характеристики автомобилей: год выпуска, изготовитель, перечень устраненных неисправностей; ФИО работника станции и время устранения каждой неисправности. Возможно введение в БД сведений о новых владельцах и новых неисправностях.
Диспетчеру могут потребоваться следующие сведения:
- ФИО и адрес владельца автомобиля с данным номером госрегистрации;
- изготовитель, марка и год выпуска автомобиля данного владельца;
- перечень устраненных неисправностей в автомобиле данного владельца;
- ФИО работника станции, устранявшего данную неисправность автомобиля данного владельца, и время устранения;
- какие автомобили ремонтировал данный работник станции;
-ФИО владельцев автомобилей с указанным типом неисправности.
Диспетчер может вносить следующие изменения:- добавить информацию о владельце ремонтируемого автомобиля;- удалить информацию о работнике станции;- изменить номер госрегистрации автомобиля.
Необходимо предусмотреть возможность выдачи справки о наличии неисправности автомобиля некоторого владельца и отчета о работе станции техобслуживания (количество ремонтируемых автомобилей, время ремонта каждого автомобиля, ФИО работника, который их ремонтировал, список неисправностей для каждой марки автомобиля).
Вариант16
Спроектировать базу данных, для менеджера музыкальных групп. В БД должны храниться сведения о группах: название, год образования, страна, состав исполнителей, положение в последнем хит-параде (может изменяться); репертуаре каждой группы: названия .песен, композитор, автор текста; данные о последних гастролях группы: название гастрольной программы, место, дата начала и окончания гастролей, цена билета (зависят от места гастролей и положения в хит-параде).Возможно появление новой группы и изменение состава исполнителей. Каждая песня может быть в репертуаре только одной группы.
Менеджеру могут потребоваться следующие сведения:- год образования и страна группы данного названия;
- репертуар наиболее популярной группы;
- автор текста, композитор и дата создания песни с данным названием;
- место и продолжительность гастролей группы с данным названием;
- цена билета на концерт указанной группы;
- состав исполнителей группы данного названия, их возраст и амплуа;
Администратор БД может вносить следующие изменения:
- ввод новой группы;
- изменение положения группы в хит-параде;
- удаление информации об исполнителе, покинувшем группу.
Необходимо предусмотреть возможность выдачи справки о лучших трех группах в хит-параде и отчета о гастролях групп (название группы, место и сроки гастролей, репертуар с указанием авторов песен).
Вариант 17
Спроектировать базу данных, для работников гостиницы. В БД должны храниться сведения о проживающих клиентах , служащих гостиницы, убирающих в номерах. Имеются номера трех типов: одноместный, двухместный и трехместный, отличающиеся стоимостью проживания в сутки. Количество номеров в гостинице известно. О каждом проживающем должна храниться следующая информация:
номер паспорта, ФИО, город, из которого он прибыл, дата поселения гостинице, выделенный гостиничный номер, на сколько дней выделен номер. Каждый номер характеризуется типом, стоимостью проживания, номером телефона. Номера упорядочены по этажам. О служащем гостиницы должна храниться следующая информация: ФИО, номер этажа, где он убирает, день недели, когда он убирает данный этаж. Служащий гостиницы убирает все номера на одном этаже в определенные дни недели.
Работа с БД предполагает обслуживание следующих запросов :
- получение списка фамилий проживающих в заданном номере;
- вычисление счета за проживание в гостинице;
- определение количества свободных мест и свободных номеров;
- получение списка прибывших из заданного города;
- установление ФИО служащего, убиравшего номер заданный день недели у некоторого клиента..
Администратор БД может вносить следующие изменения:
- освобождение номера проживающим;
- изменение расписания уборки для служащего в указанный день недели;
- увольнение служащего гостиницы.
Необходимо предусмотреть возможность выдачи справки о счете за проживание в гостинице определенного клиента и отчета о работе гостиницы за последний квартал (число клиентов, сколько дней был занят и свободен каждый номер, сумма дохода гостиницы).
Необходимо предусмотреть возможность выдачи справки о счете за проживание в гостинице определенного клиента и отчета о работе гостиницы за последний квартал (число клиентов, сколько днёй был занят и свободен каждый номер, сумма дохода гостиницы).
Вариант 18
Спроектировать базу данных, для почтовых работников. В БД должны храниться сведения о подписчиках газет (возможно добавление новых подписчиков), обслуживаемых некоторым отделением связи.
Каждая газета характеризуется индексом, названием и подписной ценой. Данные о подписчиках включают в себя: ФИ0, домашний адрес, телефон, индексы получаемых газет, дату, начиная с которой оформлена подписка, и срок подписки каждой газеты. Несколько домов объединены в участок, который обслуживается одним почтальоном. Каждый почтальон может обслуживать несколько участков. В БД должны содержаться сведения о том, к каким участкам относятся подписчики газет, и об обслуживающем их почтальоне.
Возможны следующие запросы к ВД:
- определить наименование и количество экземпляров всех газет, получаемых отделением связи;
- для заданного адреса определить фамилию почтальона, обслуживающего подписчика,
- какие газеты выписывает гражданин с заданными ФИО;
- для почтальона с заданной фамилией определить, какие газеты и в каком количестве он доставляет подписчикам.
Администратор ВД может вносить следующие изменения:
- изменение почтальона, обслуживающего данный участок;
- добавление информации о новой выписанной газете;
- удаление информации при окончании срока подписки.
Необходимо предусмотреть возможность выдачи справки о
почтальоне, обслуживающем данный участок, и отчета о газетах, доставляемых почтой (названия газет, их количество, распределение газет по участкам, сроки получения каждой газеты и ФИO почтальонов, обслуживающих каждый участок).
Вариант 19
Спроектировать базу данных, технического архива предприятия. Технический архив содержит стеллажи, полки и ячейки, в которых хранится документация. Ячейка архива может быть пустой или хранить все экземпляры одного документа. Каждый экземпляр документации имеет инвентарный номер и название. В БД должна содержаться следующая информация: номер стеллажа, номер полки, номер ячейки, названия документа и темы, к который он относится, инвентарный номер, количество экземпляров документа, содержащихся в ячейке, даты поступления документов в архив и запросов к ним. За документом могут обращаться абоненты архива, характеризующиеся ФИО, номером и телефоном отдела, где они работают.
При работе с БД могут потребоваться следующие сведения:
- определить название наиболее часто требуемого документа;
- определить общее количество документов на заданную тему;
- определить тему по названию документа;
- определить название документа, который имеется в максимальном количеству экземпляров;
- определить отдел, работники которого наиболее часто обращаются к архиву;
- установить ФИО абонента, обращавшегося последним к указанному документу.
Администратор БД может вносить следующие изменения:
- добавление нового документа;
- изменение номера телефона указанного отдела;
- удаление экземпляра некоторого документа.
Необходимо предусмотреть возможность выдачи справки об абонентах отдела, пользующихся архивом, и отчета о работе архива (число единиц хранения, названия документов, поступивших в архив за последний месяц, количество экземпляров каждого документа и место его хранения).
Вариант 20
Спроектировать базу данных, для специализированной библиотеки, которая располагает книжным фондом определенной тематической направленности. Предполагается, что каждая книга фонда может быть как в одном экземпляре, так и в нескольких. Поэтому каждой книге соответствует уникальный инвентарный номер и библиотечный код. Данные о книге содержатся в библиографической карточке, карточки объединяются в каталоги. Существует два вида каталогов: алфавитный и тематический; в алфавитном каталоге карточки отсортированы по фамилии автора, а в тематическом – сначала по темам, а в пределах каждой темы – по фамилии автора.
Библиотека выдает книги читателям во временное пользование. При записи в библиотеку каждому читателю присваивается порядковый номер, ему выдается читательский билет и для него заводится учетная карточка. Учетная карточка кроме данных о читателе в дальнейшем будет содержать информацию о выданных и возвращенных книгах.
Данные можно сгруппировать следующим образом:
– книжный фонд (инвентарный номер книги, библиотечный код книги, отметка о выдаче/возвращении );
– каталог (библиотечный код книги, автор, название, издательство, год издания, количество страниц, тема, цена)
– читатели (номер читательского билета, фамилия, имя, отчество, домашний адрес, домашний телефон, рабочий телефон);
– выдача книг (инвентарный номер книги, номер читательского билета, дата выдачи, запланированная дата возврата).
Создаваемая информационная система предназначена, прежде всего, для ведения данных: о книгах (регистрация новых поступлений, списание литературы), о читателях (регистрация новых читателей, удаление информации о выбывших читателях), а также о перемещении книг между библиотекой и читат<