The document outlines the creation of several database tables for a vehicle management system, including VEHICULES, MODELES, PERSONNES, ACQUISITIONS, and CONTRAT_VENTE, with defined primary and foreign key relationships. It also includes constraints for data validation such as checks on price, power, and unique identifiers. Additionally, modifications are made to existing tables to enforce further data integrity rules.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
9 views2 pages
Rendu SGBD
The document outlines the creation of several database tables for a vehicle management system, including VEHICULES, MODELES, PERSONNES, ACQUISITIONS, and CONTRAT_VENTE, with defined primary and foreign key relationships. It also includes constraints for data validation such as checks on price, power, and unique identifiers. Additionally, modifications are made to existing tables to enforce further data integrity rules.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2
1/
CREATE TABLE VEHICULES (
Immatriculation VARCHAR2(30) PRIMARY KEY, Ref_Model VARCHAR2(30) NOT NULL, Date_Mise_Circulation DATE NOT NULL, Kilometrage NUMBER NOT NULL, Prix_Demande NUMBER NOT NULL, CONSTRAINT fk_vehicule_modele FOREIGN KEY (Ref_Model) REFERENCES MODELES (Ref_Model) ON DELETE CASCADE );
CREATE TABLE MODELES (
Ref_Model VARCHAR2(30) PRIMARY KEY, Modele VARCHAR2(30) NOT NULL, Marque VARCHAR2(30) NOT NULL, Puissance VARCHAR2(30) NOT NULL );
CREATE TABLE PERSONNES (
CIN VARCHAR2(15) PRIMARY KEY, Nom VARCHAR2(30) NOT NULL CHECK (REGEXP_LIKE(Nom, '^[A-Za-z]+$')), Prenom VARCHAR2(30) NOT NULL CHECK (REGEXP_LIKE(Prenom, '^[A-Za-z]+$')), Email VARCHAR2(50) UNIQUE NOT NULL, Num_Tel NUMBER UNIQUE NOT NULL CHECK (LENGTH(TO_CHAR(Num_Tel)) >= 8) );
CREATE TABLE ACQUISITIONS (
Immatriculation VARCHAR2(30), CIN VARCHAR2(15), Date_Debut DATE NOT NULL, Date_Fin DATE CHECK (Date_Fin > Date_Debut), PRIMARY KEY (Immatriculation, CIN), CONSTRAINT fk_acquisition_vehicule FOREIGN KEY (Immatriculation) REFERENCES VEHICULES (Immatriculation) ON DELETE CASCADE, CONSTRAINT fk_acquisition_personne FOREIGN KEY (CIN) REFERENCES PERSONNES (CIN) ON DELETE CASCADE );
CREATE TABLE CONTRAT_VENTE (
Ref_Contrat VARCHAR2(30) PRIMARY KEY, CIN VARCHAR2(15), Immatriculation VARCHAR2(30), Date_Vente DATE DEFAULT SYSDATE NOT NULL, Prix_Vente NUMBER NOT NULL CHECK (Prix_Vente > 0), CONSTRAINT fk_contrat_vehicule FOREIGN KEY (Immatriculation) REFERENCES VEHICULES (Immatriculation) ON DELETE CASCADE, CONSTRAINT fk_contrat_personne FOREIGN KEY (CIN) REFERENCES PERSONNES (CIN) ON DELETE CASCADE );
2/ ALTER TABLE MODELES ADD CONSTRAINT chk_puissance CHECK (Puissance IN ('4CH', '5CH', '6CH'));
ALTER TABLE VEHICULES
ADD CONSTRAINT chk_prix_demande CHECK (Prix_Demande BETWEEN 1000 AND 100000);
ALTER TABLE PERSONNES
ADD CONSTRAINT chk_nom_prenom CHECK (Nom <> Prenom);