Problème de syntaxe sous Mysql 5.4

Résolu
crock -  
MoustiK666 Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Lors de ma création de table j'ai l'erreur suivante :

"ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near '-00-0
0,
dem_prob VARCHAR(45) NOT NULL,
dem_statut VARCHAR(20) NOT NULL,
uti_num ' at line 6"

Quelle est mon erreur de syntaxe svp ??

CREATE TABLE demande (
dem_num INTEGER(20) NOT NULL,
mat_num INTEGER(20) NOT NULL,
dem_priorite VARCHAR(20) NOT NULL,
dem_descrip TEXT NOT NULL,
dem_date DATE NOT NULL DEFAULT 0000-00-00,
dem_prob VARCHAR(45) NOT NULL,
dem_statut VARCHAR(20) NOT NULL,
uti_num INTEGER(20) NOT NULL,
uti_tec INTEGER(20) NOT NULL,PRIMARY KEY(dem_num),
FOREIGN KEY(uti_num, mat_num)
REFERENCES utilisateur(uti_num, mat_num),
FOREIGN KEY(uti_tec, mat_num)
REFERENCES utilisateur(uti_num, mat_num)
);

6 réponses

MoustiK666 Messages postés 18 Date d'inscription   Statut Membre Dernière intervention  
 
'0000-00-00' essaye de mettre des cotes.
0
tompols Messages postés 1273 Date d'inscription   Statut Contributeur Dernière intervention   435
 
euh....juste un truc, une date 00/00/0000 ça vous parait possible ????? au pire je dirais 01/01/0001 mais ça fait loin (peut etre faudrait il revoir la valeur par défaut ?)
Apres on peut se demander pourquoi mettre ce champ en non null alors qu'on a une valeur par défaut nulle (0 pour une date équivaut à null non ?) ?????
Tom
0
crock
 
Merci beaucoup !
0
crock
 
Autre souci :

mysql> CREATE TABLE demande (
-> dem_num INTEGER(20) NOT NULL,
-> mat_num INTEGER(20) NOT NULL,
-> dem_priorite VARCHAR(20) NOT NULL,
-> dem_descrip TEXT NOT NULL,
-> dem_date DATE NOT NULL DEFAULT '0000-00-00',
-> dem_prob VARCHAR(45) NOT NULL,
-> dem_statut VARCHAR(20) NOT NULL,
-> uti_num INTEGER(20) NOT NULL,
-> uti_tec INTEGER(20) NOT NULL,
-> PRIMARY KEY(dem_num),
-> FOREIGN KEY(uti_num, mat_num)
-> REFERENCES utilisateur(uti_num, mat_num),
-> FOREIGN KEY(uti_tec, mat_num)
-> REFERENCES utilisateur(uti_num, mat_num)
-> );


Souci => ERROR 1005 (HY000): Can't create table 'helpdesk.demande' (errno: 150)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tompols Messages postés 1273 Date d'inscription   Statut Contributeur Dernière intervention   435
 
Re,
a priori errno 150 vient d'un problème de clés étrangères, commence par vérifier les types de données et les index sur tes 2 foreign keys...
0
MoustiK666 Messages postés 18 Date d'inscription   Statut Membre Dernière intervention  
 
Il doit y avoir une erreur sur les clés étrangères . Vérifie que les types ainsi que le nom entre foreign key et que les references sont bien identiques. Fais le test en enlevant les clés étrangeres juste pour voir si il créait la table.

Edit grillé !!
0