2009-03-07 6 views
1

Salut c'est mon code et ça retourne "Vous avez une erreur dans votre syntaxe SQL, consultez le manuel correspondant à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de 'VALUE, chapitre VARCHAR (100) de caractère Utf8 COLLA » à la ligne 2"Problème avec CHARSET dans MySQL créer une table

CREATE TABLE SINON EXISTE textes (
id VALEUR DEFAULT SERIAL,
chapitre VARCHAR (100) de caractère Utf8 COLLATE utf8_general_ci,
texte CARACTÈRE LONGTEXT SET utf8 COLLATE utf8_general_ci,
uid INT NOT NULL AUTO_INCREMENT UNIQUE KEY,
temps TIMESTAMP,
FULLTEXT (chapitre)
) Moteur = InnoDB;

Je n'ai aucune idée de ce qui ne va pas, je l'écrivais selon la documentation de MySQL.

J'ai aussi essayé de changer cette colonne pour

chapitre VARCHAR (100) de caractère Utf8, ...

, mais il est revenu la même erreur.

Répondre

2

La ligne:

id SERIAL DEFAULT VALUE, 

est invalide. Vous devez spécifier une valeur pour DEFAULT VALUE ou l'extraire. Cependant, vous avez 2 champs auto_increment dans votre table, ce qui est également invalide. Serial est juste un alias pour

BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT . 
+0

Bonne réponse. Je pense que "VALUE" ne lui appartient pas non plus. De toute façon, il n'est pas nécessaire de définir une valeur par défaut pour une colonne auto-incrémentée. – bernie

Questions connexes