Реализуем таблицу Работник. Для идентификации записей введем первичный ключ ID.
Таблица 4.2 Пояснение типов полей табл. «Работник»
Атрибут |
Столбец |
Тип данных |
Мотивация |
Примечание |
ID работника |
ID |
NUMER(10) |
Порядковый номер |
Primary Key |
ФИО |
clientName |
VARCHAR2(100) |
Фамилия имя отчество |
Реализуем таблицу Товар. Для идентификации записей введем первичный ключ ID.
Таблица 4.3 Пояснение типов полей табл. «Товар»
Атрибут |
Столбец |
Тип данных |
Мотивация |
Примечание |
ID товара |
ID |
NUMER(10) |
Порядковый номер товара |
Primary Key |
Название |
productName |
VARCHAR(50) |
Название товара |
|
Цена |
price |
NUMBER(8,2) |
Цена товара |
|
Количество |
quantity |
NUMBER(7,3) |
Количество товара на складе |
Реализуем таблицу Продажа. Для идентификации записей введем первичный ключ ID.
Таблица 4.4 Пояснение типов полей табл. «Продажа»
Атрибут |
Столбец |
Тип данных |
Мотивация |
Примечание |
ID продажи |
ID |
NUMER(10) |
Порядковый номер продажи |
Primary Key |
ID Работник |
productID |
NUMBER(10) |
Порядковый номер клиента |
Foreign Key |
ID Клиент |
workerID |
NUMBER(10) |
Порядковый номер клиента |
Foreign Key |
ID Товар |
clientID |
NUMBER(10) |
Порядковый номер товара |
Foreign Key |
Количество |
sellQuantity |
NUMBER(7,3) |
Количество проданного товара |
|
Дата продажи |
sellDate |
DATE |
Дата продажи товара |
Рисунок 4.1 — Схема базы данных
drop table sell;
drop table worker;
drop table client;
drop table product;
CREATE TABLE product(
ID NUMBER(10) NOT NULL,
productName VARCHAR(50) NOT NULL,
price NUMBER(8,2),
quantity NUMBER(7,3),
CONSTRAINT product_pk PRIMARY KEY (ID)
);
CREATE TABLE worker(
ID NUMBER(10) NOT NULL,
workerName VARCHAR2(100) NOT NULL,
CONSTRAINT worker_pk PRIMARY KEY (ID)
);
CREATE TABLE client(
ID NUMBER(10) NOT NULL,
clientName VARCHAR2(100) NOT NULL,
clientAddress VARCHAR2(500),
clientPhone NUMBER(10),
CONSTRAINT client_pk PRIMARY KEY (ID)
);
CREATE TABLE sell(
ID NUMBER(10) NOT NULL,
productID NUMBER(10) NOT NULL,
workerID NUMBER(10) NOT NULL,
clientID NUMBER(10) NOT NULL,
sellQuantity NUMBER(7,3) NOT NULL,
sellDate DATE NOT NULL,
CONSTRAINT sell_pk PRIMARY KEY (ID),
CONSTRAINT sell_product_fk FOREIGN KEY (productID) REFERENCES product (ID),
CONSTRAINT sell_worker_fk FOREIGN KEY (workerID) REFERENCES worker (ID),
CONSTRAINT sell_client_fk FOREIGN KEY (clientID) REFERENCES client (ID)
);
commit;
5.2 Заполнение таблиц
delete from product;
delete from worker;
delete from client;
delete from sell;
INSERT INTO product VALUES(1,'product1',14.20,91);
INSERT INTO product VALUES(2,'product2',12.40,82);
INSERT INTO product VALUES(3,'product3',54.18,73);
INSERT INTO product VALUES(4,'product4',13.99,64);
INSERT INTO product VALUES(5,'product5',74.10,55);
INSERT INTO product VALUES(6,'product6',10.50,46);
INSERT INTO product VALUES(7,'product7',11.50,37);
INSERT INTO product VALUES(8,'product8',18.95,28);
INSERT INTO product VALUES(9,'product9',01.40,19);
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.