diff --git a/BusTP2.sql b/BusTP2.sql index b44dad72db4d97c76ab4fa440763f805c70804db..f867ad436ecf44df50e19ca033a7a0f8c224adc7 100644 --- a/BusTP2.sql +++ b/BusTP2.sql @@ -1,21 +1,26 @@ -DROP TABLE VILLES; - +DROP TABLE Réservations CASCADE CONSTRAINTS; +DROP TABLE Clients CASCADE CONSTRAINTS; +DROP TABLE Tarifs CASCADE CONSTRAINTS; +DROP TABLE Etapes CASCADE CONSTRAINTS; +DROP TABLE Trajets CASCADE CONSTRAINTS; +DROP TABLE Bus CASCADE CONSTRAINTS; +DROP TABLE Villes CASCADE CONSTRAINTS; CREATE TABLE Villes ( NomV VARCHAR2(50) PRIMARY KEY NOT NULL -) +); CREATE TABLE Bus ( NumB INT PRIMARY KEY NOT NULL, CapacitéB INT NOT NULL, CONSTRAINT chk_capacity Check(CapacitéB > 0) -) +); CREATE TABLE Trajets ( NumT INT PRIMARY KEY NOT NULL, NumB INT NOT NULL, FOREIGN KEY (NumB) REFERENCES Bus(NumB) -) +); CREATE TABLE Etapes ( NumT INT NOT NULL, @@ -26,7 +31,7 @@ CREATE TABLE Etapes ( FOREIGN KEY (NumT) REFERENCES Trajets(NumT), FOREIGN KEY (NomV) REFERENCES Villes(NomV), CONSTRAINT chk_duree_arret CHECK(DateD >= DateA + 5/1440) -) +); CREATE TABLE Tarifs ( VilleD VARCHAR2(50) NOT NULL, @@ -37,13 +42,13 @@ CREATE TABLE Tarifs ( FOREIGN KEY (VilleA) REFERENCES Villes(NomV), CONSTRAINT chk_prix Check(Prix > 0), CONSTRAINT chk_villes_diff CHECK (VilleA <> VilleD) -) +); CREATE TABLE Clients ( NumC INT PRIMARY KEY NOT NULL, NomC VARCHAR2(50) NOT NULL, AdresseC VARCHAR2(50) NOT NULL -) +); CREATE TABLE Réservations ( NumR INT PRIMARY KEY NOT NULL, @@ -56,5 +61,5 @@ CREATE TABLE Réservations ( FOREIGN KEY (NumT, VilleD) REFERENCES Etapes(NumT, NomV), FOREIGN KEY (NumT, VilleA) REFERENCES Etapes(NumT, NomV), FOREIGN KEY (VilleD, VilleA) REFERENCES Tarifs(VilleD, VilleA), - CONSTRAINT chk_places CHECK(Nbplaces > 0) -) \ No newline at end of file + CONSTRAINT chk_places CHECK (Nbplaces > 0) +); \ No newline at end of file