Программирование >>  Sql: полное руководство 

1 ... 229 230 231 [ 232 ] 233 234 235 ... 264


руководство





Учебная база данных



в настоящем приложении описана база данных, на которой основано больщинстве примеров, приведенных в этой книге. В учебной базе данных содержится информация для простого приложения по обработке заказов, использующегося в небольшой торговой компании. Учебная база данных состоит из пяти таблиц: ш customers (клиенты) - содержит по одной строке для каждого из клиентов компании;

salesreps (служащие) - содержит по одной строке для каждого из десяти служащих компании;

offices (офисы) - содержит по одной строке для каждого из пяти офисов компании;

ш products (товары) - содержит по одной строке для каждого наименования товара, продаваемого компанией;

orders (заказы) - содержит по одной строке для каждого из заказов, сделанных клиентом. Для простоты считается, что один заказ может содержать только один товар.

На рис. А. 1 в графической форме изображены пять перечисленных таблиц, столбцы, которые в них содержатся, и отнощения предок/потомок, существующие между ними. Первичные ключи таблиц выделены серым цветом.

OFFICES

OFFICE

CITY

REGION

MGR -

TARGET SALES

HASMGR


WORKSIN

CUSTOMERS

CUST NUM COMPANY CUST REP CREDIT LIMIT

SALESREPS

EMPL NUM NAME AGE REP OFFICE TITLE

HIRE DATE

MANAGER-

QUOTA SALES

PLACEDBY

HASREP

PRODUCTS

MFRJD *

PRODUCTJD DESCRIPTION PRICE

QTY ON HAND

TAKENBY

ISFOR

ORDERS

ORDER NUM

ORDER DATE CUST -REP

MFR \.

PRODUCT /

AMOUNT

М-

Пять таблиц базы данных были созданы с помощью инструкций create table, приведенных ниже:

create table customers

(cust num integer not null, company varchar(20) not null,



CUST REP INTEGER,

CREDIT LIMIT MONEY,

PBIMARY KEY (CUST NaM),

FOREIGN KEY HASREP (CUST REP)

REFERENCES SALESREPS

ON DELETE SET NULL)

CREATE TABLE SALESREPS

(EMPL NUM INTEGER NOT NULL,

NAME VARCHAR(15) NOT NULL, AGE INTEGER, REP OFFICE INTEGER,

TITLE VARCHAR(10) , HIRE DATE DATE NOT NULL, MANAGER INTEGER, QUOTA MONEY, SALES MONEY NOT NULL, PRIMARY KEY (EMPL NUM), FOREIGN KEY (MANAGER) REFERENCES SALESREPS ON DELETE SET NULL, FOREIGN KEY WORKSIN {REP OFFICE) REFERENCES OFFICES ON DELETE SET NULL)

CREATE TABLE OFFICES

(OFFICE INTEGER NOT NULL,

CITY VARCHAR(15) NOT NULL, REGION VARCHAR(10) NOT NULL,

MGR INTEGER, TARGET MONEY, SALES MONEY NOT NULL, PRIMARY KEY (OFFICE), FOREIGN KEY HASMGR (MGR) REFERENCES SALESREPS ON DELETE SET NULL)

CREATE TABLE ORDERS

(ORDER NUM INTEGER NOT NULL,

ORDER DATE DATE NOT NULL,

CUST INTEGER NOT NULL,

REP INTEGER,

MFR CHAR(3) NOT NULL,

PRODUCT CHAR(5) NOT NULL,

QTY INTEGER NOT NULL,

AMOUNT MONEY NOT NULL,

PRIMARY KEY {ORDER NUM),

FOREIGN KEY PLACEDBY (CUST)

REFERENCES CUSTOMERS

ON DELETE CASCADE,

FOREIGN KEY TAKENBY (REP)

REFERENCES SALESREPS

ON DELETE SET NULL,

FOREIGN KEY ISFOR (MFR, PRODUCT)



1 ... 229 230 231 [ 232 ] 233 234 235 ... 264

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика