Posez votre question Signaler

Erreur mysql #1064 [Résolu]

calamar31 - Dernière réponse le 30 janv. 2012 à 02:39
Bonjour,
je suis débutant en mysql et j'ai beau regarder je ne trouve pas l'erreur de syntaxe :
php:
$command = CREATE TABLE 'test' ('truc' VARCHAR NOT NULL , '1' INT(30) NOT NULL , 'truc' VARCHAR NOT NULL);
SQL:
CREATE TABLE 'test'(
'ca marche' VARCHAR NOT NULL , '1' INT(30) NOT NULL , 'peu bien' VARCHAR NOT NULL
)
message d'erreur
php:
Parse error: syntax error, unexpected T_STRING in C:\wamp\www\testdb.php on line 3
SQL
#1064 - 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 ''test' ('ca marche' VARCHAR NOT NULL , '1' INT(30) NOT NULL , 'peu bien' VARCHAR NOT NULL)' at line 1
merci beaucoup pour vos réponses
Lire la suite 

Erreur mysql #1064 »

4 réponses
Réponse
+1
moins plus
Bonjour

Premièrement, la totalité de la chaine devrait être entouré de guillemets pour pouvoir la mettre dans la variable $command

Voici une version fonctionnelle de votre requête de création de table :


CREATE TABLE IF NOT EXISTS test (ca_marche VARCHAR(10) NOT NULL, un INT(30) NOT NULL, peu_bien VARCHAR(10) NOT NULL);



Ce que j'ai fait :

1. enlever le nom des champs et le nom de table d'entre les apostrophes.
2. le caractère espace est peu conseillé dans le nom d'un champs, je l'ai donc remplacé par "_".
3. J'ai spécifié une taille aux champs de type VARCHAR
4. le nom de champs numérique '1' donnait une erreur - je l'ai transformé en "un"
5. Optionnellement, la mention "IF NOT EXISTS" fut ajoutée pour ne pas générer une erreur si la table est déjà existante dans la base de données cible.

Bon succès!
Ajouter un commentaire
Réponse
+0
moins plus
ça marche , merci beaucoup pour ces petits conseil
Ajouter un commentaire
Réponse
+0
moins plus
Hey! super,
si autres problèmes similaires, faites moi le savoir, c'est samedi !!!

Et ce fut un plaisir,

Ajouter un commentaire
Réponse
+0
moins plus
Bonjour Joomliner,

J'ai moi aussi un problème avec un import de BDD sur mysql et je nage....
Un peu d'aide me serait d'un grand secours...!

l'erreur:

requête SQL:

"1,""PS_LANG_DEFAULT"",""2"",""2011-12-07 03:53:08"",""2011-12-07 03:55:47"""

MySQL a répondu:Documentation
#1064 - 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 '"1,""PS_LANG_DEFAULT"",""2"",""2011-12-07 03:53:08"",""2011-12-07 03:55:47"""' at line 1

Ma base de données ressemble à ça:

1,"PS_LANG_DEFAULT","2","2011-12-07 03:53:08","2011-12-07 03:55:47" je précise que c'est une base de prestashop...

Merci par avance !
Ajouter un commentaire
Ce document intitulé « erreur mysql #1064 » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?