You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
4.3 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

DROP TABLE Voiture, Types, Client, Réservartion, Stock;
CREATE TABLE Voiture(
immatriculation CHAR(9) PRIMARY KEY CONSTRAINT Problème_Immatriculation CHECK(immatriculation LIKE '(A-Z)(A-Z)-(0-9)(0-9)(0-9)-(A-Z)(A-Z)'),
marque VARCHAR(50) NOT NULL CONSTRAINT Probmème_Marque,
kilométrage NUMERIC(6) NOT NULL CONSTRAINT Problème_Kilométrage,
couleur VARCHAR(40) NOT NULL CONSTRAINT Porblème_Couleur,
modèle VARCHAR(50) NOT NULL REFERENCES Type,
);
CREATE TABLE Type(
modèle VARCHAR(50) PRIMARY KEY CONSTRAINT Problème_Modèle,
caution NUMERIC(5) NOT NULL CONSTRAINT Poblème_Caution
);
CREATE TABLE Client(
num_permis VARCHAR(15) PRIMARY KEY CONSTRAINT Numéro_de_permis,
nom VARCHAR(40) NOT NULL CONSTRAINT Problème_Nom,
prenom VARCHAR(40) NOT NULL CONSTRAINT Problème_Prénom,
date_obtention NUMERIC(4) NOT NULL CONSTRAINT Problème_Date CHECK(date_obtention <= 2022 AND date_obtention > 1942),
adresse VARCHAR(100) NOT NULL CONSTRAINT Probleme_Adresse,
code_postal NUMERIC(4) NOT NULL CHECK(9999 < code_postal < 99999),
ville VARCHAR(100) NOT NULL CONSTRAINT Porblème_Ville,
tel CHAR(15) NOT NULL CONSTRAINT Problème_Téléphone CHECK(tel LIKE('(06,07).(0-9).(0-9).(0-9).(0-9)'))
);
CREATE TABLE Réservartion(
num_reservation NUMERIC(12) CONSTRAINT Numéro_Réservation PRIMARY KEY,
DateReservation DATE CONSTRAINT Date_Réservation NOT NULL,
forfait NUMERIC(5,2) CONSTRAINT Problème_Forfait CHECK (Forfait >= 500.00 AND Forfait > 0.00),
DateRetour DATE CONSTRAINT Date_Retour CHECK (dateretour > DateReservation AND dateRetour = DateReservation + Durée),
Durée NUMERIC(2) CONSTRAINT Problème_Durée CHECK(Durée <= 7 AND Durée >= 1)
);
CREATE TABLE Stock(
immatriculation CHAR(9) REFERENCES Voiture CHECK(immatriculation LIKE '(A-Z)(A-Z)(0-9)(0-9)(0-9)(A-Z)(A-Z)'),
num_reservation NUMERIC(12) REFERENCES Réservartion,
disponibilité CHAR(3) NOT NULL CONSTRAINT Problème_Disponibilité,
PRIMARY KEY(immatriculation, num_reservation)
);
CREATE TABLE Fournisseur(
nom_fournisseur VARCHAR(100) PRIMARY KEY,
type_contrat VARCHAR(100) NOT NULL,
date_contrat DATE NOT NULL CONSTRAINT Problème_Date_Contrat
);
INSERT INTO Voiture VALUES('GR-056-ON','Bugatti',23189,'Noir','Chiron',2018);
INSERT INTO Voiture VALUES('EZ-667-EK','Koenigsegg',34129,'Jaune','Regera',2016);
INSERT INTO Voiture VALUES('PO-726-TG','Ferrari',65023,'Rouge','458 Italia',2011);
INSERT INTO Voiture VALUES('CO-138-OL','Ford',10298,'Argent','Mustang GT',1969);
INSERT INTO Voiture VALUES('BI-132-NO','Bugatti',85543,'Noir et Rouge','Veyron',2009);
INSERT INTO Voiture VALUES('VI-404-MS','Tesla',10298,'Argent','Cybertruck',2023);
INSERT INTO Voiture VALUES('PQ-100-DB','Lamborghini',8765,'Vert','Aventador SV',2022);
INSERT INTO Type VALUES('Veyron',150000);
INSERT INTO Type VALUES('Chiron',240000);
INSERT INTO Type VALUES('Regera',230000);
INSERT INTO Type VALUES('458 Italia',30000);
INSERT INTO Type VALUES('Cybertruck',9500);
INSERT INTO Type VALUES('Mustang GT',12300);
INSERT INTO Type VALUES('Aventador SV',35000);
INSERT INTO Client VALUES(654684321685486,'Musk','Elon',1990,'3 Rue des Potiers',75000,'Paris', '06 18 16 69 48');
INSERT INTO Client VALUES(546513546843546,'Natendo','Stéphane',1976,'21 Rue du Pape',21000,'Tisoumits','06 85 96 12 04');
INSERT INTO Client VALUES(487465443154873,'Joseph','Hugue',2003,'91 Avenue de lUnion Soviétique',17742,'Mouscou','05 39 14 45 75');
INSERT INTO Client VALUES(464384543544456,'Cénou','John',1999,'47 Rue du Combattant',93000,'Ring','07 83 53 73 76');
INSERT INTO Client VALUES(248798745615644,'Delacroix','Joé',2012,'18 rue de Porte de la Chapelle',89623,'Saint-Augustin','06 65 87 64 45');
INSERT INTO Client VALUES(654684321685486,'Musk','Elon',1990,'3 Rue des Potiers',75000,'Paris', '06 18 16 69 48 ');
INSERT INTO Client VALUES(654684321685486,'Musk','Elon',1990,'3 Rue des Potiers',75000,'Paris', '06 18 16 69 48 ');
INSERT INTO Client VALUES(654684321685486,'Musk','Elon',1990,'3 Rue des Potiers',75000,'Paris', '06 18 16 69 48 ');
INSERT INTO Client VALUES(654684321685486,'Musk','Elon',1990,'3 Rue des Potiers',75000,'Paris', '06 18 16 69 48 ');
INSERT INTO Client VALUES(654684321685486,'Musk','Elon',1990,'3 Rue des Potiers',75000,'Paris', '06 18 16 69 48 ');
INSERT INTO Client VALUES(654684321685486,'Musk','Elon',1990,'3 Rue des Potiers',75000,'Paris', '06 18 16 69 48 ');