База даних bookbіz містить інформацію про діяльність трьох філій видавничої компанії.
Таблиця publishers містить інформацію про видавництва: їх ідентифікаційні номери, назви й адреси.
pub_id
char(4)
not null
unique index pubind
pub_name
varchar(40)
null
address
varchar(40)
null
City
varchar(20)
null
state
char(2)
null
Описання навчальної бази даних bookbiz
Інформація про кожного автора, що має контракт із видавцем, міститься в таблиці authors: номер картки соціального страхування, ім'я, прізвище й адресні дані.
au_id
char(11)
not null
unique index auidind
au_lname
varchar(40)
not null
composite index aunmind
au_fname
varchar(20)
not null
phone
char(12)
null
address
varchar(40)
null
city
varchar(20)
null
state
char(2)
null
zip
char(5)
null
Аналогічну інформацію про кожного редактора містить таблиця edіtors. Крім того, в ній є додаткове поле, що описує вид роботи, яка виконується редактором (підбір інформації чи керування всім проектом).
ed_id
char (11)
not null
unique index edind
ed_lname
varchar(40)
not null
composite index ednmind
ed__fname
varchar(20)
not null
ed_pos
varchar(12)
null
phone
char(12)
null
address
varchar(40)
null
city
varchar(20)
null
state
char(2)
null
zip
char(5)
null
По всім книгам які були видані або готуються до друку таблиця tіtles містить наступну інформацію: ідентифікаційний номер, назва, тема, ідентифікаційна номер видавця, вартість, витрати, кількість проданих екземплярів, стан контракту, додаткові дані і дата виходу. Числа в стовпці ytd_sales повинні змінюватися в міру збільшення кількості проданих книг.
title_id
char(6)
not null
unique index titleidind
title
varchar(80)
not null
index titleind
type
char(12)
null
pub_id
char(4)
null
price
money
null
advance
money
null
ytd_sales
int
null
contract
bit
not null
notes
varchar(200)
null
pubdate
date
null
Книги й автори представлені в різних таблицях, але можуть бути зв'язані за допомогою третьої таблиці - tіtleauthors. Для кожної книги таблиця tіtleauthors містить рядок з описом ідентифікатора книги, ідентифікатора автора, позиції автора в списку авторів книги й інформацію з поділу гонорару.
au_id
char(11)
not null
unique composite index taind
title_id
char(6)
not null
au_ord
int
null
royaltype
float
null
Таблиця tіtledіtors аналогічно зв'язує книги з їхніми редакторами. Крім того, вона описує порядок редагування, тобто можна довідатися, хто був першим чи останнім редактором.
ed_id
char(11)
not null
unique composite index teind
title id
char(6)
not null
ed_ord
int
null
Таблиця roysched описує залежність між кількістю проданих книг і розміром авторського гонорару. Гонорар складає визначену частину суми, що була отримана за продані книги.
title_id
char(6)
not null
index rstidind
lorange
int
null
hirange
int
null
royalty
float
null
Таблиця sales містить загальну інформацію про замовлення, що отримані від книгарень: номер квитанції на продаж (одержаної від видавця), ідентифікатор магазина, номер замовлення на покупку (одержаного від книгарні ) і дату виконання замовлення.
sonum
int
not null
storjd
char(4)
not null
ponum
varchar(20)
not null
sdate
date
null
Таблиця salesdetaіls містить інформацію про кожний пункт замовлення на покупку: назва, кількість замовлених книг, кількість відправлених книг і дата відправлення.
sonum
int
not null
qty_ordered
smallint
not null
qty_shipped
smallint
null
title_id
char(6)
not null
date_shipped
date
null
Список літератури
Джеймс Р. Грофф, Пол Н. Вайнберг. SQL: полное руководство: пер. с англ. – К.: Издательская группа ВНV, 2000. – 608 с.
Дж.Боуман, С.Эмерсон, М.Дарновски.Практическое руководство по SQL: пер. с англ. – СПб: Питер, 2000. – 322 с.