Bonsoir tout le monde,

J'essaie d'appliquer un exemple de création d'une base de données sous PhpMyAdmin.

Je rencontre un problème en éxécutant ces requêtes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/*   	Commandes de création de la base Films.
         SQL ANSI SAUF le type TEXT (remplacer par LONG pour ORACLE)   */
 
CREATE TABLE Internaute (email VARCHAR (40) NOT NULL, 
                         nom VARCHAR (30) NOT NULL ,
                         prenom VARCHAR (30) NOT NULL,
                         mot_de_passe VARCHAR (32) NOT NULL,
                         annee_naissance INTEGER,
                         PRIMARY KEY (email));
 
CREATE TABLE Pays (code    VARCHAR(4) NOT NULL,
                   nom  VARCHAR (30) DEFAULT 'Inconnu' NOT NULL,
                   langue VARCHAR (30) NOT NULL,
                   PRIMARY KEY (code));
 
CREATE TABLE Artiste  (id INTEGER NOT NULL,
                       nom VARCHAR (30) NOT NULL,
                       prenom VARCHAR (30) NOT NULL,
                       annee_naissance INTEGER,
                       PRIMARY KEY (id),
                       UNIQUE (nom, prenom));
 
CREATE TABLE Film  (id INTEGER NOT NULL,
                    titre    VARCHAR (50) NOT NULL,
                    annee    INTEGER NOT NULL,
                    id_realisateur  INTEGER,
                    genre VARCHAR(30) NOT NULL,
                    resume      TEXT, 
                    code_pays    VARCHAR (4),
                    PRIMARY KEY (id),
                    FOREIGN KEY (id_realisateur) REFERENCES Artiste,
                    FOREIGN KEY (code_pays) REFERENCES Pays);
 
CREATE TABLE Notation (id_film INTEGER NOT NULL,
                       email  VARCHAR (40) NOT NULL,
                       note  INTEGER NOT NULL,
                       PRIMARY KEY (id_film, email),
                       FOREIGN KEY (id_film) REFERENCES Film,
                       FOREIGN KEY (email) REFERENCES Internaute);
 
CREATE TABLE Role (id_film INTEGER NOT NULL,
                   id_acteur INTEGER NOT NULL,
                   nom_role  VARCHAR(60), 
                   PRIMARY KEY (id_film, id_acteur),
                   FOREIGN KEY (id_film) REFERENCES Film,
                   FOREIGN KEY (id_acteur) REFERENCES Artiste);
J'obtiens l'erreur : #1005 - Can't create table 'films.film' (errno: 150)

J'ai fait de nombreuses recherches sur google, et je sais que le problème concerne les clés étrangères, mais je ne vois pas quoi précisément.

Merci de m'aider.

R3MIX.