-- Table CompteClient
CREATE TABLE CompteClient (
Login VARCHAR(20) PRIMARY KEY,
MotDePasse VARCHAR(20) NOT NULL,
Email VARCHAR(40) NOT NULL,
Nom VARCHAR(20) NOT NULL,
Prenom VARCHAR(20) NOT NULL,
DateNaissance DATE,
Adresse VARCHAR(40) NOT NULL,
CodePostal INT NOT NULL,
Pays VARCHAR(20) NOT NULL,
IdCom INT
) ENGINE=INNODB;
-- Table Categorie
CREATE TABLE Categorie (
NomCategorie VARCHAR(20) PRIMARY KEY
) ENGINE=INNODB;
-- Table Titre
CREATE TABLE Titre (
INDEX idx_Titre(IdTitre),
IdTitre INT PRIMARY KEY,
Artiste VARCHAR(20) NOT NULL,
NomTitre VARCHAR(20) NOT NULL,
Album VARCHAR(20),
Prix INT NOT NULL,
NomCat VARCHAR(20) NOT NULL,
CONSTRAINT fk_nomCat
FOREIGN KEY (NomCat) REFERENCES Categorie(NomCategorie)
) ENGINE=INNODB;
-- Table Commande
CREATE TABLE Commande (
INDEX idx_Commande(IdCommande),
IdCommande INT PRIMARY KEY,
Date DATE NOT NULL,
Prix INT NOT NULL,
Log VARCHAR(20) NOT NULL,
CONSTRAINT fk_log
FOREIGN KEY (Log) REFERENCES CompteClient(Login)
) ENGINE=INNODB;
-- Table Appartient
CREATE TABLE Appartient (
Titre VARCHAR(20),
INDEX (Titre) ,
CONSTRAINT fk_titre
FOREIGN KEY (Titre) REFERENCES Titre(IdTitre),
Commande VARCHAR(20) NOT NULL,
INDEX (Commande) ,
CONSTRAINT fk_commande
FOREIGN KEY (Commande) REFERENCES Commande(IdCommande),
CONSTRAINT pk_titre_comm
) ENGINE=INNODB;
ALTER TABLE CompteClient
ADD CONSTRAINT fk_idCom FOREIGN KEY (IdCom) REFERENCES Commande(IdCommande);