Posez votre question Signaler

{MySQL} #1064 - Erreur de syntaxe près de ')

Absot 715Messages postés 28 octobre 2008Date d'inscription 24 avril 2012Dernière intervention - Dernière réponse le 18 juin 2009 à 12:16
Bonjour, j'ai un problème quand je veux rentrer des table dans ma BDD avec phpmyadmin, j'ai l'erreur #1064 - Erreur de syntaxe près de ') NOT NULL) ENGINE = InnoDB' à la ligne 1 mais je ne sais pas d'où vient le problème..
Voilà la table:
CREATE TABLE `site`.`Produit` (
`idProduit` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nom` VARCHAR( 50 ) NOT NULL ,
`categorie` VARCHAR( 50 ) NOT NULL ,
`reference` VARCHAR( 50 ) NOT NULL ,
`photo` VARCHAR( 50 ) NOT NULL ,
`prixTTC` DOUBLE( 11 ) NOT NULL
) ENGINE = InnoDB 

A quoi sert ENGINE = InnoDB ?
Merci de votre aide.
Lire la suite 

{MySQL} #1064 - Erreur de syntaxe près de ') »

9 réponses
Réponse
+2
moins plus
Salut à ton CREATE TABLE, met seulement le nom de ta table

et ENGINE = INNO DB permet de gérer les clés étrangères
Ajouter un commentaire
Réponse
+2
moins plus
Je viens de tester en mettant un INT à la place d'un double et ça fonctionne..

J'ai modifier ensuite le INT par un FLOAT et ça fonctionne aussi mais le FLOAT est l'équivalent du double?
Alkaaran- 17 juin 2009 à 16:11
Il est utilisé pour les nombres à virgule aussi oui

Plus d'infos : http://dev.mysql.com/doc/refman/5.0/fr/numeric-type-overview.html
Ajouter un commentaire
Réponse
+0
moins plus
C'est DOUBLE (11) le problème, met plutot FLOAT ( 11) ou DOUBLE tout court

L'engine InnoDB est un moteur de tables, c'est lui qui va gérer la correspondance et le stockage des fichiers de BDD
Ajouter un commentaire
Réponse
+0
moins plus
Je comprends mieux merci par contre j'ai une nouvelle erreur à ma table client, il me dit l'erreur #1067 - Valeur par défaut invalide pour 'postal' alors qu'elle est comme ça:
postal int( 5 ) NOT NULL default '',


Je ne vois pas trop où est le problème.. :/

Je voudrais aussi créer un fichier .sql qui me permet de faire une sauvegarde de mes données au cas où et pour la rentrer dans la BDD, il faut d'abord créer le base puis les tables et après importer le fichier?
Ajouter un commentaire
Réponse
+0
moins plus
postal int( 5 ) NOT NULL default 0,

Tu ne peut pas mettre de chaine dans un integer :)

Pour ton fichier fais simplement une sauvegarde avec phpMyadmin (si tu l'as)
Ajouter un commentaire
Réponse
+0
moins plus
C'est en faisant qu'on apprend :)

Pour mon fichier, je préfère l'option de créer un fichier .sql et après de l'importer dans phpmyadmin comme ça, si je change de pc ou autre, j'ai juste à le réinsérer..

Normalement, pour se connecter à la BDD, cette requête fonctionne?
$connexion = mysql_connect("localhost","root") or die("Connexion impossible au serveur");


Parce que j'ai cette erreur:

Warning: mysql_connect() [function.mysql-connect]: Accès refusé pour l'utilisateur: 'root'@'@localhost' (mot de passe: NON) in C:\Program Files\EasyPHP 3.0\www\site\catalogue.php on line 29
Connexion impossible au serveur


Et la ligne 29 est ma requête citée un peu plus haut..
Ajouter un commentaire
Réponse
+0
moins plus
$connexion = mysql_connect("localhost","root","motdepasse") or die("Connexion impossible au serveur");

Sinon tu peux exporter manuellement depuis phpmyadmin : cela te créera au choix un fichier .txt, .sql ou .zip et bien d'autres options :)
Ajouter un commentaire
Réponse
+0
moins plus
Effectivement ça marche mieux avec un mot de passe... xD

Je commence à bien comprendre mysql :)

J'exporterai de temps en temps ma BDD pour en faire une sauvegarde..
Ajouter un commentaire
Ce document intitulé « {MySQL} #1064 - Erreur de syntaxe près de ') » 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 ?