SQL Create & Insert
SQL Create & Insert
GO
USE CourseNet_Store
-- Create MsCustomer
CREATE TABLE MsCustomer(
CustomerId CHAR(5) PRIMARY KEY,
CustomerName VARCHAR(50),
CustomerGender VARCHAR(10),
CustomerPhone VARCHAR(13),
CustomerAddress VARCHAR(100),
CONSTRAINT cekIDCust CHECK(CustomerId LIKE 'CU[0-9][0-9][0-9]')
)
-- Create MsStaff
CREATE TABLE MsStaff(
StaffId CHAR(5) PRIMARY KEY,
StaffName VARCHAR(50),
StaffGender VARCHAR(10),
StaffPhone VARCHAR(13),
StaffAddress VARCHAR(100),
StaffSalary NUMERIC(11,2),
StaffPosition VARCHAR(20),
CONSTRAINT cekIDStaff CHECK(StaffId LIKE 'SF[0-9][0-9][0-9]')
)
-- Create MsItemType
CREATE TABLE MsItemType(
ItemTypeId CHAR(5) PRIMARY KEY,
ItemTypeName VARCHAR(50),
CONSTRAINT cekIDItemType CHECK(ItemTypeId LIKE 'IT[0-9][0-9][0-9]')
)
-- Create MsItem
CREATE TABLE MsItem(
ItemId CHAR(5) PRIMARY KEY,
ItemTypeId CHAR(5) REFERENCES MsItemType ON UPDATE CASCADE ON DELETE CASCADE,
ItemName VARCHAR(50),
Price NUMERIC(11,2),
Quantity NUMERIC(11,2),
CONSTRAINT cekIDItem CHECK(ItemId LIKE 'IM[0-9][0-9][0-9]')
)
-- Create HeaderSellTransaction
CREATE TABLE HeaderSellTransaction(
TransactionId CHAR(5) PRIMARY KEY,
CustomerId CHAR(5) REFERENCES MsCustomer ON UPDATE CASCADE ON DELETE CASCADE,
StaffId CHAR(5) REFERENCES MsStaff ON UPDATE CASCADE ON DELETE CASCADE,
TransactionDate DATE,
PaymentType VARCHAR(20),
CONSTRAINT cekIDTrans CHECK(TransactionId LIKE 'TR[0-9][0-9][0-9]')
)
-- Create DetailSellTransaction
CREATE TABLE DetailSellTransaction(
TransactionId CHAR(5) REFERENCES HeaderSellTransaction ON UPDATE CASCADE ON
DELETE CASCADE,
ItemId CHAR(5) REFERENCES MsItem ON UPDATE CASCADE ON DELETE CASCADE,
SellQuantity NUMERIC(11,2),
PRIMARY KEY(TransactionId, ItemId)
)
-- Insert Data
INSERT INTO MsCustomer VALUES
('CU001', 'Kevin Axellino Triantio', 'Male', '081267381930', 'Jelambar Street no
17'),
('CU002', 'Kerin Augustin', 'Female', '081372116372', 'Ancol Barat Street no 190'),
('CU003', 'Fernando Lioexander', 'Male', '087824153627', 'Palmerah Street no 20'),
('CU004', 'Naufal Hafiz', 'Male', '081127173829', 'Duri Kepa Street no 9'),
('CU005', 'Arya Thomas', 'Male', '081811992617', 'Anggrek Street no 12')