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 DATE NOT NULL CONSTRAINT Problème_Date CHECK(date_obtention < (CURRENT_DATE - INTERVAL '3 year')), 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 ); 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), 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 );