Database Coursework Pt.2 Ft.loic & Florentin (1)
Database Coursework Pt.2 Ft.loic & Florentin (1)
This assignment is being presented to you by Loic Fred Cheerkoot and Florentin Edouard. This
is the second part of our database on a jewelry store system. The assignment is for DBT1102C
for Database Design and Concepts.
CATEGORY
Column Name Data Type Field Length Constraint Value
CategoryID NUMBER 6 PK
CategoryName VARCHAR2 50 NN
CategoryDescription VARCHAR2 255
INVENTORY_ITEM
Column Name Data Type Field Length Constraint Value
JewelID NUMBER 6 PK
JewelName VARCHAR2 50 NN
JewelDescription VARCHAR2 255 NN
JewelCost NUMBER (8,2) NN
UnitPrice NUMBER (8,2) NN
ImageURL VARCHAR2 255 NN
Quantity NUMBER 6 NN
CategoryID NUMBER 6 FK REFERENCES
CATEGORY(CategoryID)
SALES_AMOUNT
Column Name Data Type Field Length Constraint Value
SaleID NUMBER 6 PK
JewelID NUMBER 6 FK REFERENCES
INVENTORY_ITEM(JewelID)
Quantity NUMBER 6 NN
CASH_SALES
Column Name Data Type Field Length Constraint Value
SaleID NUMBER 6 PK
SaleDate DATE NN
CustomerID NUMBER 6 FK REFERENCES
CUSTOMER(CustomerID)
CUSTOMER
Column Name Data Type Field Length Constraint Value
CustomerID NUMBER 6 PK
FirstName VARCHAR2 50 NN
LastName VARCHAR2 50 NN
PhoneNumber VARCHAR2 15
Email VARCHAR2 100
Street VARCHAR2 100
City VARCHAR2 50
State VARCHAR2 50
Zipcode VARCHAR2 10
Country VARCHAR2 50
DateOfBirth DATE
PreferredContactMethod VARCHAR2 10
RegistrationDate DATE NN
PAYMENT
Column Name Data Type Field Length Constraint Value
PaymentID NUMBER 6 PK
PaymentDate DATE NN
PaymentAmount NUMBER (8,2) NN
PaymentType VARCHAR 20 NN
2
SaleID NUMBER 6 FK REFERENCES
CASH_SALES(SaleID)
OrderID NUMBER 6 FK REFERENCES
CUSTOM_ORDER(OrderID)
SUPPLIER
Column Name Data Type Field Length Constraint Value
SupplierID NUMBER 6 PK
CompanyName VARCHAR2 100 NN
FirstName VARCHAR2 50 NN
LastName VARCHAR2 50 NN
PhoneNumber VARCHAR2 15 NN
Email VARCHAR2 100 NN
Street VARCHAR2 100 NN
City VARCHAR2 50 NN
State VARCHAR2 50
Zipcode VARCHAR2 10 NN
Country VARCHAR2 50 NN
BankName VARCHAR2 100 NN
AccountNumber NUMBER 12 NN
SwiftCode VARCHAR2 20 NN
SUPPLY_ORDER
Column Name Data Type Field Length Constraint Value
SupplyID NUMBER 6 PK
SupplyDate DATE NN
SupplierID NUMBER 6 FK REFERENCES
SUPPLIER(SupplierID)
SUPPLIED_ITEMS
Column Name Data Type Field Length Constraint Value
MaterialID NUMBER 6 FK REFERENCES
RAW_MATERIALS(MaterialID)
SupplyID NUMBER 6 FK REFERENCES
SUPPLY_ORDER(SupplyID)
Quantity NUMBER 6 NN
Price NUMBER (8,2) NN
RAW_MATERIALS
Column Name Data Type Field Length Constraint Value
MaterialID NUMBER 6 PK
MaterialName VARCHAR2 100 NN
MaterialType VARCHAR2 50
Description VARCHAR2 255
GramAvailable NUMBER (8,2) NN
CUSTOM_ORDER
Column Name Data Type Field Length Constraint Value
OrderID NUMBER 6 PK
OrderDetails VARCHAR2 255
OrderDate DATE NN
DateRequired DATE
CUSTOM_JEWEL
Column Name Data Type Field Length Constraint Value
CustomJewelID NUMBER 6 PK
CustomJewelName VARCHAR2 100 NN
JewelDescription VARCHAR2 255
Price NUMBER (8,2) NN
Quantity NUMBER 6 NN
CompletionDate DATE
OrderID NUMBER 6 FK REFERENCES
CUSTOM_ORDER(OrderID)
CategoryID NUMBER 6 FK REFERENCES
CATEGORY(CategoryID)
MATERIALS_USED_FOR_CUSTOM
Column Name Data Type Field Length Constraint Value
CustomJewelID NUMBER 6 FK REFERENCES
CUSTOM_JEWEL(CustomJewelID)
MaterialID NUMBER 6 FK REFERENCES
RAW_MATERIALS(MaterialID)
QuantityUsed NUMBER 6 NN
MATERIALS_USED_FOR_INV
Column Name Data Type Field Length Constraint Value
JewelID NUMBER 6 FK REFERENCES
INVENTORY_ITEM(JewelID)
MaterialID NUMBER 6 FK REFERENCES
RAW_MATERIALS(MaterialID)
QuantityUsed NUMBER 6 NN
SQL
DROP TABLE MATERIALS_USED_FOR_INV;
CategoryDescription VARCHAR2(255)
);
JewelDescription VARCHAR2(255),
ImageURL VARCHAR2(255),
);
JewelID NUMBER(6),
);
PhoneNumber VARCHAR2(15),
Email VARCHAR2(100),
Street VARCHAR2(100),
City VARCHAR2(50),
State VARCHAR2(50),
Zipcode VARCHAR2(10),
Country VARCHAR2(50),
DateOfBirth DATE,
PreferredContactMethod VARCHAR2(10),
);
CustomerID NUMBER(6)
);
SaleID NUMBER(6),
OrderID NUMBER(6)
);
CREATE TABLE SUPPLIER (
State VARCHAR2(50),
);
SupplierID NUMBER(6)
);
CREATE TABLE RAW_MATERIALS (
);
MaterialID NUMBER(6),
SupplyID NUMBER(6),
);
OrderDetails VARCHAR2(255),
DateRequired DATE
);
CREATE TABLE CUSTOM_JEWEL (
JewelDescription VARCHAR2(255),
CompletionDate DATE,
OrderID NUMBER(6),
);
CustomJewelID NUMBER(6),
MaterialID NUMBER(6),
);
MaterialID NUMBER(6),
);
VALUES (101, 'Gold Ring', 'A beautiful gold ring', 500.00, 1200.00, 'gold_ring1.jpg', 10,
1);
VALUES (102, 'Diamond Necklace', 'Pure diamond and iron necklace', 750.00, 1800.00,
'images/diamond_necklace.jpg', 5, 2);
VALUES (103, 'Silver Bracelet', '925 Sterling Silver Bracelet', 200.00, 500.00,
'images/silver_bracelet.jpg', 15, 3);
VALUES (104, 'Ruby Earrings', 'Earrings with embedded rubies', 450.00, 1000.00,
'images/ruby_earrings.jpg', 8, 4);
VALUES (301, 'Ayaan', 'Pillay', '+230 5912 3456', '[email protected]', '18 Rue
Mahebourg', 'Grand Baie', NULL, '32312', 'Mauritius', TO_DATE('1990-05-10', 'YYYY-
MM-DD'), 'Email', TO_DATE('2024-01-15', 'YYYY-MM-DD'));
VALUES (303, 'Vishal', 'Ramtohul', '+230 5767 8901', '[email protected]', '67 Rue
Labourdonnais', 'Bel Air', NULL, '41322', 'Mauritius', TO_DATE('1995-03-15', 'YYYY-MM-
DD'), 'SMS', TO_DATE('2024-01-25', 'YYYY-MM-DD'));
INSERT INTO CUSTOMER (CustomerID, FirstName, LastName, PhoneNumber, Email,
Street, City, State, Zipcode, Country, DateOfBirth, PreferredContactMethod,
RegistrationDate)
VALUES (305, 'Kevin', 'Mootien', '+230 5987 1234', NULL, NULL, NULL, NULL, NULL,
'Mauritius', NULL, NULL, TO_DATE('2024-02-01', 'YYYY-MM-DD'));
VALUES (401, 'JewelCraft Ltd', 'Gemstones Ltd', 'Appadoo', '+230 5901 2345',
'[email protected]', '123 Rue Orchidée', 'Port Louis', NULL, '11223', 'Mauritius',
'MCB Bank', '010123456789', 'MCBLMUMU');
VALUES (701, 'I want a Gold Ring with my initial engraved on it.', TO_DATE('2024-01-
20', 'YYYY-MM-DD'), TO_DATE('2024-03-01', 'YYYY-MM-DD'));
INSERT INTO CUSTOM_ORDER (OrderID, OrderDetails, OrderDate, DateRequired)
VALUES (703, 'i want a heart shaped Ruby Pendant.', TO_DATE('2024-02-10', 'YYYY-
MM-DD'), TO_DATE('2024-04-01', 'YYYY-MM-DD'));
VALUES (801, 'Engraved Gold Ring', 'Engraved 18K Gold Ring.', 2000.00, 1,
TO_DATE('2024-03-01', 'YYYY-MM-DD'), 701, 1);
VALUES (803, 'Heart Ruby Pendant', 'Lovely ruby pendant cut in a heart shape.',
2500.00, 1, TO_DATE('2024-04-10', 'YYYY-MM-DD'), 703, 2);