Разработка АИС "Тематический план издательства"
Описание предметной области (ПО).
Издательство имеет договоры с несколькими коллективами авторов на написание нескольких книг и заказы с заказчиками на их публикацию.
Про каждого заказчика известно: номер, название, адрес (индекс, город, улица, дом), телефон.
Про каждый заказ на публикацию известно: номер заказа, артикул книги, дата публикации, стоимость заказа, пеня (процент от стоимости заказа) за каждый день опоздания публикации.
Про каждую книгу известно: артикул книги, тематика книги (учебник, справочник, и т.п.), название книги, тираж, срок публикации (период между сдачей рукописи в выходом в свет)
Про каждого автора известно: ФИО, адрес, телефон.
Про каждый договор на написание рукописи известно: номер договора, артикул рукописи, дата сдачи рукописи в издательство, код и гонорар автора - авторов может быть несколько для каждой рукописи.
Семантические допущения:
Ø С каждым заказчиком может быть несколько договоров на публикацию
Ø Артикул рукописи и соответствующей книги совпадают
Ø Каждую рукопись могут писать несколько авторов
Ø Каждый автор может писать несколько рукописей
Ø При удалении заказчика на публикацию, аннулируются соответствующие книги и договоры на их рукописи.
Могут быть сделаны и другие обоснованные допущения
Задание
Написать команды SQL Oracle для следующих операций манипулирования данными:
1. Добавить нового заказчика
2. Удалить заказчика
3. Изменить атрибуты заказчика (номер, название, и т.д.)
4. Добавить заказ на публикацию
5. Изменить атрибуты книги (название книги, срок публикации.)
6. Добавить договор на рукопись
7. Изменить авторский коллектив рукописи (добавить, удалить автора, изменить его реквизиты)
8. Выдать номер и название заказчика, имеющего максимальную суммарную стоимость заказов на публикацию книг
9. Определить прибыль издательства по конкретному заказу на публикацию (стоимость заказа - сумма гонораров авторам - пеня, если публикация просрочена)
10. Подсчитать суммарный баланс по конкретному заказчику на конкретную дату
11. Подсчитать суммарный баланс по всем заказчикам на конкретную дату
12. Проверить возможность выполнения заказа без нарушения срока публикации
13. Выдать список авторов, написавших рукописи по определенной тематике
14. Подсчитать суммарный гонорар конкретного автора
15. Подсчитать суммарный тираж всех книг, выпущенных издательством на конкретную дату
16. Выдать список всех авторов, упорядоченный по числу сданных в набор рукописей
17. Выдать список всех книг, находящихся в печати в настоящее время
18. Найти автора, написавшего максимальное число книг для конкретного заказчика по всем его заказам
19. Найти автора, книги которого изданы максимальным тиражом
20. Выдать список заказчиков, заказавших публикации книг по определенной тематике
Для упрощения SQL-запросов можно использовать представления.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.