Practical Work 01-Correction
Practical Work 01-Correction
A web page opens, click on the “Open” button of the Php MyAdmin module.
After the selection, we can notice that we are in the “L2” database directory.
Click on the SQL tab, then write the SQL code in the SQL code editor, finally click on the
“Execute” button in the right bottom of the code editor.
SQL code:
Creating Database:
CREATE DATABASE IF NOT EXISTS L2;
---------------------------------------------------------------------
Create the TRAVELER table:
USE L2;/* To use if the case of DB has not been selected. */
DROP TABLE IF EXISTSTRAVELER;
CREATE TABLE TRAVELER(
NoTR INT PRIMARY KEY,
LastName VARCHAR(20)UNIQUE NOT NULL,
FirstName VARCHAR(20)NOT NULL,
BirthDat DATE,
Gender SET ('M', 'F') DEFAULT 'M'
);
------------------------------------------
Create the FLIGHT table:
DROP TABLE IF EXISTS FLIGHT;
CREATE TABLE FLIGHT (
NoFL INT PRIMARY KEY,
Destination SET ('Algiers', 'Bejaia', 'Constantine', 'Oran', 'Ouargla', 'Sétif') DEFAULT
'Algiers',
FlightDat DATE,
DepartTime TIME,
NbrPlaces INT DEFAULT 100,
CONSTRAINT Limit_Nbr_Pl CHECK (NbrPlaces>=100)
);
Note: If we use MySQL 8.0.15 or earlier, The CHECK clause is parsed but ignored by all
storage engines (In other word it doesn’t work).
------------------------------------------------
Create the RESERVATION table:
DROP TABLE IF EXISTS RESERVATION;
CREATE TABLERESERVATION (
NoTRINT,
NoFLINT,
PRIMARY KEY(NoTR,NoFL),
CONSTRAINT FK_1 FOREIGN KEY (NoTR) REFERENCES TRAVELER (NoTR) ON UPDATE
CASCADEON DELETE RESTRICT,
CONSTRAINT FK_2 FOREIGN KEY (NoFL) REFERENCES FLIGHT(NoFL) ON UPDATE
CASCADE ON DELETE RESTRICT
);
Deleting Gender column:
ALTER TABLE TRAVELER DROP COLUMN GENDER;
Adding Gender column:
ALTER TABLE TRAVELER ADDCOLUMN GENDER SET ('M', 'F') DEFAULT 'M';
Remove the default value from the Number of places:
ALTER TABLE FLIGHT ALTER NbrPlaces DROP DEFAULT;
C. Using SQL DML commands:
Insert tuples (Records) into each table.
Inserting tuples in the FLIGHT table:
INSERT INTO FLIGHT VALUES (1000,'Algiers','2024-03-01','80:00',200);
INSERT INTO FLIGHT VALUES (1001,'Oran','2024-03-01','13:00',150);
INSERT INTO FLIGHT VALUES (1002, Default,'2024-03-02','12:00',120);
INSERT INTO FLIGHT VALUES (1003,'Ouargla','2024-03-03','80:00',100);
INSERT INTO FLIGHT VALUES (1004,'Bejaia','2024-03-05','20:00',180);
INSERT INTO FLIGHT VALUES (1005,'Sétif','2024-03-06','06:00',200);