java.sql.SQLException: Champ 'supplier_id" ne pas avoir de valeur par défaut
J'ai un message d'erreur à partir de ce:
java.sql.SQLException: Field 'supplier_id' doesn't have a default value
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2985)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1631)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3277)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1402)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1317)
Tout le monde peut-il m'aider ?
ma base de données les champs ne sont pas vides .
mais je veux obtenir ce résultats:
insert into xxx(name,password)values('xxx','xxx');
et insert into xxx(name,password,man)values('xxx','xxx','xxx');
les deux succès (à la fois pour que le client est un succès ,mais dans le code java est une erreur,le code d'erreur au titre supérieur), au lieu de insert into xxx(name,password)values('xxx','xxx')
est faux;
mon mysql pot est mysql-connector-java-5.0.8
Cela signifie que votre fournisseur d'id n'a pas de valeur par défaut, et vous devez insérer un.
La solution pour un problème similaire peut être trouvée dans: stackoverflow.com/questions/804514/...
La solution pour un problème similaire peut être trouvée dans: stackoverflow.com/questions/804514/...
OriginalL'auteur chendurex | 2014-10-13
Vous devez vous connecter pour publier un commentaire.
L'erreur est auto-explicatif. Votre colonne
supplier_id
ne pas avoir de valeur par défaut. Donc, lors de l'insertion, mysql ne peut pas comprendre ce qu'il faut insérer dans la colonnesupplier_id
. Vous pouvez effectuer l'une des trois choses :-1. Ajouter une valeur par défaut à la colonne
supplier_id
Aide -2. L'approvisionnement de la valeur à la
supplier_id
colonne lors de l'insertion.3. Ajouter un incrément automatique de la colonne et ajouter une clé primaire à l'aide du code :-
je viens par du code java pour résoudre ce problème?
OK, donc en 3ème option n'est pas applicable. Donc, rendez-vous avec la 1ère option (recommandé). Ajouter une valeur par défaut à la colonne
passer la requête sql que je l'ai mentionné dans la 1ère option définir par défaut une valeur nulle pour la
supplier_id
colonneOriginalL'auteur khandelwaldeval
Pour résoudre ce problème, soit de fournir une valeur pour
supplier_id
lorsque vous ne l'INSERT
, ou de rendre la colonnenullable
dans la DB.OriginalL'auteur peter.petrov
Ajouté cette propriété
A fonctionné pour moi
OriginalL'auteur Deepak
Vous utilisez la table où vous avez supplier_id colonne . il n'a pas de valeur par défaut ,au moment de l'insertion de cette colonne ne contient aucune valeur . initialiser supplier_id colonne avec une certaine valeur par défaut , ou de l'utilisation incrément automatique si vous utilisez supplier_id comme clé primaire.
OriginalL'auteur praveen_programmer
Il pourrait y avoir deux cas.
Vous avez déclaré que la colonne de la valeur par défaut comme nul et ne sont pas pas passer tout de la valeur lors de l'insertion.
Vous avez déclaré que la colonne dans la base de données, mais vous n'avez pas déclaré la même chose dans votre entité de l'objet, qui est à l'origine de l'erreur.
OriginalL'auteur K81094