Compte de colonne d'exception SQL ne correspond pas à la valeur de la valeur à la ligne 1
dans NetBeans version 8.2 Lors de l'utilisation d'un formulaire dans Swing Je veux être envoyée à la base de données SQL ou à MySQL Workbench P> P> APK code>. Je reçois cette erreur p>
3 Réponses :
Votre table a 9 colonnes, mais vous insérez uniquement des valeurs à 1 colonnes.
Vous devez rechercher pour utiliser Query paramétrice code> ou utiliser cette solution de contournement (le type de paramètre varchar est éruqué par '' code>, le type de numéro n'est pas) p>
Vous pouvez utiliser cette
int i=s.executeUpdate("insert into register(FULL_NAME,EMAIL,PASSWORD,CPASSWORD,MOBILE_NO,GENDER,DEPARTMENT,HOBBIES,ADDRESS) "
+ "values ('"+fname1+"','"+email1+"','"+pass1+"','"+cpass1+"','"+num1+"','"+gender+"','"+dept1+"','"+hobby+"','"+address1+"')");
Votre requête, après que toutes les concatuations des chaînes devraient ressembler à ceci:
Dans votre exemple après la concaténation, cela ressemblera à ceci:
int i = s.executeUpdate ("Insérer dans
Inscrivez-vous (Nom complet, email, mot de passe, casséword, mobile_no, sexe, département, passe-temps, adresse) valeurs ("Personnale", "Personnelle", ..))
code>
Vous devez entourer chaque chaîne avec une seule citation lorsque vous faites une requête dans SQL P>
int i = s.executeUpdate ("Insérer dans
Inscrivez-vous (Nom complet, Email, Mot de passe, Cassword, Mobile_no, Sexe, Département, Hobbies, Adresse) Valeurs ('Personnale, PersonnelMaililail, ..)))
code>
et sera interprété comme si vous avez donné une valeur uniquement pour la première colonne FULL_NAME P>
Un moyen facile de trouver le problème serait, sauvegardez votre chaîne d'instruction SQL dans une variable, sortie de la variable dans la console ou un fichier de débogage, exécutez que SQL directement dans votre MySQL Workbench, vous trouverez le problème :) Je devine Cela pourrait être dû à des guillemets simples manquants englobant les valeurs de champ. Je me tromperai peut-être, mais sauvegarder l'instruction SQL exacte de votre code et l'exécution dans la Workbench vous donnera une idée
Veuillez vous reporter à propos de SQL Injection et d'utilisation
Paretstatement code> à la place. Il est plus sûr et plus lisible!