Professional Documents
Culture Documents
Assignment Part 2
Assignment Part 2
Office
CREATE TABLE Office(
branchCode VARCHAR( 5 ) UNIQUE PRIMARY KEY ,
numberOrHouse VARCHAR( 50 ) ,
postCode VARCHAR( 50 ) ,
staffCode VARCHAR( 4 ) UNIQUE ,
name VARCHAR( 100 ) UNIQUE ,
FOREIGN KEY ( staffCode ) REFERENCES Instructor( staffCode ) ON UPDATE CA
SCADE ON DELETE CASCADE ,
FOREIGN KEY ( name ) REFERENCES DrivingSchool( name ) ON UPDATE CASCA
DE ON DELETE CASCADE
)
Instructor
CREATE TABLE Instructor(
staffCode VARCHAR( 5 ) UNIQUE PRIMARY KEY ,
lastName VARCHAR( 20 ) ,
firstName VARCHAR( 20 ) ,
dateOfBirth DATE,
sex VARCHAR( 1 ) DEFAULT 'M' CHECK (
TYPE IN (
'M',
'F'
)
),
branchCode VARCHAR( 4 ) ,
name VARCHAR( 20 ) ,
FOREIGN KEY ( branchCode ) REFERENCES Office( branchCode ) ON UPDATE CA
SCADE ON DELETE CASCADE ,
FOREIGN KEY ( name ) REFERENCES DrivingSchool( name ) ON UPDATE CASCA
DE ON DELETE CASCADE
)
CAR
Client
CREATE TABLE Client(
clientCode VARCHAR( 4 ) UNIQUE PRIMARY KEY ,
lastName VARCHAR( 50 ) ,
firstName VARCHAR( 50 ) ,
numberOrHouse VARCHAR( 50 ) ,
postCode VARCHAR( 50 ) ,
staffCode VARCHAR( 4 ) ,
FOREIGN KEY ( staffCode ) REFERENCES Instructor( staffCode ) ON UPDATE CA
SCADE ON DELETE CASCADE
)
Lesson
CREATE TABLE Lesson(
staffCode VARCHAR( 4 ) NOT NULL ,
clientCode VARCHAR( 4 ) NOT NULL ,
plate VARCHAR( 8 ) NOT NULL ,
startingTime DATETIME,
mileage INT,
FOREIGN KEY ( StaffCode ) REFERENCES Instructor( StaffCode ) ON UPDATE CA
SCADE ON DELETE CASCADE ,
FOREIGN KEY ( ClientCode ) REFERENCES Client( ClientCode ) ON UPDATE CAS
CADE ON DELETE CASCADE ,
FOREIGN KEY ( plate ) REFERENCES Car( plate ) ON UPDATE CASCADE ON DEL
ETE CASCADE
)