-- Création de la base
CREATE DATABASE exercices_contraintes;
USE exercices_contraintes;

-- Table des utilisateurs
CREATE TABLE utilisateur (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nom VARCHAR(100)NOT NULL,
    prenom VARCHAR(100)NOT NULL,
    email VARCHAR(255)NOT NULL UNIQUE,
    age INT NOT NULL CHECK (age >= 0),
    
);

-- Table des produits
CREATE TABLE produit (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nom VARCHAR(100)NOT NULL UNIQUE,
    prix DECIMAL(10,2) NOT NULL CHECK (prix >= 0 ),
    stock INT NOT NULL CHECK (stock >= 0)
);


-- Table des commandes
CREATE TABLE commande (
    id INT AUTO_INCREMENT PRIMARY KEY,
    utilisateur_id INT NOT NULL,
    date_commande DATE NOT NULL,
    montant_total DECIMAL(10,2) NOT NULL CHECK (montant_total >= 0),
    CONSTRAINT fk_utilisateur FOREIGN KEY (utilisateur_id) REFERENCES utilisateur(id)
);

-- Table commande_produit
CREATE TABLE commande_produit (
    commande_id INT NOT NULL,
    produit_id INT NOT NULL,
    quantite INT NOT NULL CHECK (quantite > 0)
    PRIMARY KEY (commande_id, produit_id),
    CONSTRAINT fk_commande FOREIGN KEY (commande_id) REFERENCES commande(id),
    CONSTRAINT fk_produit FOREIGN KEY (produit_id) REFERENCES produit(id)
);
INSERT INTO filmacteur (film_id, acteur_id) VALUES (1, 2);