voici le MCD de départ



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
mon MLD
PATIENT(numP, nomP, prénomP, adrP,telP, numV#)
VILLE(numV, CP, ville)
sur ubuntu mysql 5.1 mes déclarations de tables dans une base nommé medicalcenter:

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
CREATE TABLE Ville(
numV BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
code VARCHAR(5) NOT NULL DEFAULT '',
ville VARCHAR(30) NOT NULL DEFAULT '',
CONSTRAINT pk_Ville_numV PRIMARY KEY(numV),
INDEX(code),
INDEX(ville)
)ENGINE=MyISAM DEFAULT CHARSET=utf8;
pas de probleme
 
CREATE TABLE Patient(
numP BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
nomP VARCHAR(30) NOT NULL DEFAULT '',
prénomP  VARCHAR(30) NOT NULL DEFAULT '',
adrP  VARCHAR(120) NOT NULL DEFAULT '',
numV  BIGINT UNSIGNED NOT NULL,
telP VARCHAR(10) NOT NULL DEFAULT '',
CONSTRAINT un_Patient_numP UNIQUE(numP),
CONSTRAINT pk_Patient_numP PRIMARY KEY (numP),
CONSTRAINT fk_Patient_Ville_numV FOREIGN KEY (numV) REFERENCES Ville(numV) ON DELETE NO ACTION ON UPDATE CASCADE,
INDEX(numV)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
la j'ai une l'erreur suivante :
ERROR 1005 (HY000): Can't create table 'medicalcenter.Patient' (errno: 150).
je vois vraiment pas ou est l'erreur.