Comment utiliser une variable auto Increment avec java netbeans

HASSABALLAH
Messages postés
38
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
26 mai 2015
- 20 déc. 2014 à 11:13
HASSABALLAH
Messages postés
38
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
26 mai 2015
- 21 déc. 2014 à 18:21
Bonjour,

Bonjour cher ami(e)s
j'utilise SQL server 2008 avec Netbeans
j'ai crée une Base de Donnée Nommé:scolarité et 8 Tables
dans l'une des table j'utilise le champ NUM est de type INT AUTO_INCREMENT NOT NULL,
mon problème est que je veux inséré des éléments dans cette table a partir de mon interface netbeans :
voici la fonction Ajouter.
avec cette fonction je peut pas ajouter car il me génère une erreur je compte sur vous pour m'aider

public void Ajouter(int NUM,String NOM,String PRENOM)
{
try {

PreparedStatement pst;

pst=PmimerProgramme.prepareStatement("insert into etudiant values(?,?,?)");
pst.setInt(1,NUM);
pst.setString(2,NOM);
pst.setString(3,PRENOM);
int resultat=pst.executeUpdate();
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null,ex.getMessage());
}

}

1 réponse

KX
Messages postés
16541
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
27 mai 2022
124
20 déc. 2014 à 11:22
Bonjour,

NUM est auto incrémenté, il ne sert donc à rien de l'insérer, cela va se faire tout seul.

pst=PmimerProgramme.prepareStatement("insert into etudiant (NOM, PRENOM) values (?,?)");
pst.setString(1,NOM);
pst.setString(2,PRENOM);
0
HASSABALLAH
Messages postés
38
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
26 mai 2015

20 déc. 2014 à 11:37
j'ai testé avec ce que vous avez écrit ,j'ai toujours des erreurs .
Merci
0
KX
Messages postés
16541
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
27 mai 2022
124
20 déc. 2014 à 11:39
On ne peut pas les deviner tes erreurs. Le minimum serait de nous donner la stacktrace...

} catch (Exception ex) { 
    JOptionPane.showMessageDialog(null,ex.getMessage()); 
    e.printStackTrace();
} 
0
HASSABALLAH
Messages postés
38
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
26 mai 2015
> KX
Messages postés
16541
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
27 mai 2022

20 déc. 2014 à 11:47
OK, je veux revoir mon programme à tête reposer et je veux vous faire signe Merci
0
HASSABALLAH
Messages postés
38
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
26 mai 2015
> KX
Messages postés
16541
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
27 mai 2022

21 déc. 2014 à 17:39
salut,
j'ai testé avec la méthode qui vous avez dit et le resultat est bon;
j'ai un autre problème avec cette méthode qui revoie un entier ;mai je n'arrive pas à récupérer cet entier:

public int Recup_Id throws SQLException{
////////////////////////////////


Statement st = PmimerProgramme.createStatement();

int r=st.executeUpdate("select id_Etudiant from Etudiant where Non_Etudiant=' "+Non_Etudiant+" ' );


return r;
0
KX
Messages postés
16541
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
27 mai 2022
124
21 déc. 2014 à 17:52
La méthode executeUpdate ne peut être utilisée que pour des requêtes INSERT, UPDATE ou DELETE. Pas pour faire des SELECT. Regarde la méthode execute à la place.

De plus : attention à l'injection SQL, Non_Etudiant peut potentiellement contenir des caractères spéciaux comme l'apostrophe ce qui va modifier ta requête SQL. Regarde plutôt les PreparedStatement.
0