-2


0

Erreur générale lors de la tentative d’insertion de données dans la base de données

J’essaie d’insérer des données dans une base de données et encore une fois, je ne peux pas sembler aller au fond des raisons pour lesquelles j’obtiens une erreur générale.

Tout conseil sur la façon de surmonter ce problème.

Class.forName(driverName);
connection = DriverManager.getConnection(SourceURL, user, password);
int rowAdded;

Object typeId = comboKeys.getSelectedItem();
String typeIdString = typeId.toString();
int typeIdInt = Integer.parseInt(typeIdString);

String animalIDString = txtAnimalID.getText();
int animalID = Integer.parseInt(animalIDString);
System.out.println(animalID);
String name = txtName.getText();

Statement statement = connection.createStatement();
String queryString = "INSERT INTO Animal (animalID, name, typeIDForeign) VALUES (" + animalID + ", '" + name + "', '" + typeIdInt + "')";

rowAdded = statement.executeUpdate(queryString);
connection.close();

Sincères amitiés

Arian

1 Answer


1


Erreur

Vous avez typeIdInt comme` Integer`, cependant dans la requête sql, vous le déclarez sous forme de chaîne (car vous l’entourez de guillemets simples)

Solution

String queryString =" INSERT INTO Animal (animalID, name, typeIDForeign) VALUES ("+ animalID +", '"+ name +"', '"+ typeIdInt +"') ";

devrait être :

String queryString =" INSERT INTO Animal (animalID, name, typeIDForeign) VALUES ("+ animalID +", '"+ name +"', "+ typeIdInt +") ";

Regardez " + typeIdInt + ". Vous avez `` "+ typeIdInt +" ''

Bonne chance!!!