CREATE DATABASE Parts_Trading;
use Parts_Trading;
CREATE TABLE Region(
Rregionkey int PRIMARY KEY,
Rname CHAR(25) NOT NULL,
Rcomment CHAR(152)
);
CREATE TABLE Nation(
Nnationkey int PRIMARY KEY,
Nname CHAR(25) NOT NULL ,
Nregionkey int ,
comment varchar(152),
FOREIGN KEY (Nregionkey) REFERENCES Region(Rregionkey)
);
CREATE TABLE Part(
partkey int PRIMARY KEY ,
name CHAR(55) NOT NULL,
mfgr CHAR(25),
brand CHAR(10),
type CHAR(25),
size int,
container CHAR(10),
retailprice NUMERIC(15,2),
comment varchar(152)
);
CREATE TABLE Supplier(
suppkey int PRIMARY KEY,
name CHAR(25) NOT NULL,
adress CHAR(40),
nationkey int,
phone CHAR(15),
accrbal NUMERIC(15,2),
comment varchar(152),
FOREIGN KEY (nationkey) REFERENCES Nation(Nnationkey)
);
CREATE TABLE PartSupp(
partkey int ,
supkey int ,
availqty int,
supplycost NUMERIC(15,2),
comment varchar(152),
FOREIGN KEY (partkey) REFERENCES Part(partkey),
FOREIGN KEY (supkey) REFERENCES Supplier(suppkey),
PRIMARY KEY(partkey,supkey)
);
CREATE TABLE Customer(
custkey int PRIMARY KEY,
namen CHAR(25) NOT NULL ,
adress CHAR(40),
nationkey int,
phone CHAR(15),
acctbal NUMERIC(15,2),
mktsegm CHAR(10),
comment varchar(152),
FOREIGN KEY (nationkey) REFERENCES Nation(Nnationkey)
);
CREATE TABLE Orders(
orderkey int PRIMARY KEY,
custkey int,
oderstatus CHAR(1),
totalprice NUMERIC(15,2),
orderdate date,
orderpriority CHAR(15),
clerk CHAR(15),
shippriorit int,
comment varchar(152),
FOREIGN KEY (custkey) REFERENCES Customer(custkey)
);
CREATE TABLE Lineitem(
orderkey int ,
partkey int,
suppkey int,
linenumber int ,
quantity int,
extendedprince NUMERIC(15,2),
discount NUMERIC(15,2),
tax NUMERIC(15,2),
returnflag CHAR(1),
linestatus CHAR(1),
shipdate date,
commendate date,
receipdate date,
ship CHAR(25),
shipmode CHAR(10),
comment varchar(152),
FOREIGN KEY (orderkey) REFERENCES Orders(orderkey),
FOREIGN KEY (partkey) REFERENCES Part(partkey),
FOREIGN KEY (suppkey) REFERENCES Supplier(suppkey),
PRIMARY KEY(orderkey,linenumber)
);