IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 MySQL Discussion :

Mysql Insert 1054 [MySQL-5.1]


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services de proximité

    Informations forums :
    Inscription : Avril 2013
    Messages : 3
    Par défaut Mysql Insert 1054
    j'ai un petit problème de syntaxe, avec Insert mysql, je tourne en rond sans trouver pourquoi qui peu m'aider??

    j'utilise le script suivant pour inserer un article dans la table 'blagues', il donne toujours l'erreur 1054 avec le contenu de la zone texte

    script:
    -------
    $texte = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
    $long_texte= strlen($texte); // longueur du texte
    $num = 3;
    $insb = mysqli_query($dbqa,'INSERT INTO blagues (numero, longueur, texte) VALUES ('.$num.', '.$long_texte.', '.$texte.' )');
    if (!$insb)
    { die('<br/>Erreur insert (' . mysqli_errno($dbqa) . ') ' . mysqli_error($dbqa));
    }
    echo 'insert OK num'.$num;

    résultat:
    ---------
    Erreur insert (1054) Unknown column 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' in 'field lis

    si je supprime la zone texte en insertion cela fonctionne mon article est bien inséré dans la table mais sans le texte

    exemple:
    -------
    $insb = mysqli_query($dbqa,'INSERT INTO blagues (numero, longueur) VALUES ('.$num.', '.$long_texte.' )');

    résultat
    --------
    insert OK num3


    définition de la table blagues
    -----------------------------
    1 numero smallint(4) UNSIGNED
    2 longueur smallint(4) UNSIGNED
    3 texte text utf8_unicode_ci

    base de données 5.1.49 sur Synology avec dsm 4.2


    merci d'avance pour votre réponse pertinente.

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur C++
    Inscrit en
    Avril 2012
    Messages
    771
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2012
    Messages : 771
    Par défaut
    Bonsoir,

    si tu affiche ta requête comme elle est perçu par MySQL :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO blagues (numero, longueur, texte) VALUES (1, 15, aaaaaaaaaaaaaaa)

    Donc lorsque que c'est un entier MySQL comprend sauf que lorsque quand tu veut insérer une chaîne de caractère qui n'est pas entourée par les caractères '' ou "" est interpréter comme étant le nom d'une colonne existante dans la table ou tu veut insérer ton enregistrement,

    donc pour insérer une chaîne de caractère il faut l'entourer :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $insb = mysqli_query($dbqa,"INSERT INTO blagues (numero, longueur, texte) VALUES ($num, $long_texte, '$texte')");

    PS: utilise les balises [CODE ][/CODE ] pour montrer du code sur le forum (tu peut utiliser le symbole # au dessus de la zone de saisie).

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services de proximité

    Informations forums :
    Inscription : Avril 2013
    Messages : 3
    Par défaut insert Mysql résolu
    merci bien
    pour cette bonne réposne rapide,

    mon problème est résolu
    c'est vrai que je me mélange un peu avec les ' ou " ou ( etc.

    merci encore

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services de proximité

    Informations forums :
    Inscription : Avril 2013
    Messages : 3
    Par défaut insert Mysql résolu
    merci bien
    pour cette bonne réponse rapide,

    mon problème est résolu
    c'est vrai que je me mélange un peu avec les ' ou " ou ( etc.

    merci encore

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SPRING][HIBERNATE][MYSQL] insert et valeur des champs.
    Par nikalkal dans le forum Hibernate
    Réponses: 9
    Dernier message: 27/04/2006, 14h07
  2. [SGBD] [MySQL] Insert Into
    Par Pigoulou dans le forum Requêtes
    Réponses: 1
    Dernier message: 14/01/2006, 07h34
  3. [MySQL] insert into complexe ....
    Par roninou dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/08/2005, 19h10
  4. [sgbd] [CGI + MySQL] Insert ne s'effectuant pas
    Par GLDavid dans le forum SGBD
    Réponses: 3
    Dernier message: 27/07/2004, 02h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo