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

JDBC Java Discussion :

Mysql et default value = chaine vide


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 68
    Points : 39
    Points
    39
    Par défaut Mysql et default value = chaine vide
    Bonjour,

    Je rencontre un problème pour insérer un enregistrement dans une table :
    Soit 1 table avec 3 champs de type STRING :

    id | STRING | NOT NULL | AUTO_INCREMENT | PRIMARY KEY
    nom | STRING | NOT NULL
    prenom | STRING | NOT NULL

    Ma requête : "INSERT INTO matable (nom) VALUES ('le_nom')"

    Si j'exécute cette requête en php ou sous phpmyadmin, mon enregistrement s'ajout bien dans la table avec le champ 'prenom' qui va prendre une chaine vide
    Par contre, si j'exécute cette requête dans mon programme Java, une erreur est renvoyée :
    Field 'prenom' doesn't have a default value

    Comment cela se fait-il ? Pourquoi n'ajoute-t-il pas l'enregistrement en mettant les valeur par défaut (chaine vide par defaut, 0 pour les entier, etc...) dans les champs manquant dans la requête.

  2. #2
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    ben je ne sais pas trop le pourquoi, mais le comment, est, je pense, simplement d'ajouter DEFAULT '' (ou null ?) à ta définiton de table ...
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 68
    Points : 39
    Points
    39
    Par défaut
    Ce que j'ai du mal à comprendre c'est pourquoi la requête marche sous phpmyadmin mais pas sous java.

    Concernant la valeur null, justement, c'est pour éviter de l'utiliser que je voudrais avoir une chaine vide

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par NoiBe
    Ce que j'ai du mal à comprendre c'est pourquoi la requête marche sous phpmyadmin mais pas sous java.
    Il est possible que phpmyadmin traite ce genre d'erreur et ajoute une valeur vide aux champs vides...

    As-tu essayé cette même instruction SQL directement dans la console de MySQL ?

    Citation Envoyé par NoiBe
    Concernant la valeur null, justement, c'est pour éviter de l'utiliser que je voudrais avoir une chaine vide
    Alors utiliser le DEFAULT "" qui permettra à MySQL de donner une valeur par défaut lorsque le champs est absent de l'instruction INSERT...

    a++

Discussions similaires

  1. Mysql->Oracle - Chaine vide et valeurs nulle
    Par spidetra dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 06/09/2009, 16h41
  2. Réponses: 4
    Dernier message: 25/10/2005, 20h42
  3. Création de table - chaine vide
    Par christellel198 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 20/10/2005, 15h18
  4. copie de string donne une chaine vide
    Par zmatz dans le forum SL & STL
    Réponses: 5
    Dernier message: 15/10/2005, 15h31
  5. [BDD] renvoyer une chaine vide au lieu de null
    Par cmoulin dans le forum JDBC
    Réponses: 6
    Dernier message: 06/05/2004, 11h38

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