Fonction pour gerer une requete dans la base de donnée
senol123
Messages postés
1
Statut
Membre
-
seno123 -
seno123 -
Bonjour,
Svp pouvez vous m'aider j'arrive à voir mon erreur
public int recupererIdClient(){
try {
st1 = (Statement) con.createStatement();
r = st1.executeQuery("SELECT MAX(codeClient) FROM clients ORDER BY ID DESC");
c = r.getInt("codeClient");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return c;
}
voici l'erreur afficher dans le main
Exception in thread "main" java.lang.NullPointerException
at projet.Index.main(Index.java:33)
Svp pouvez vous m'aider j'arrive à voir mon erreur
public int recupererIdClient(){
try {
st1 = (Statement) con.createStatement();
r = st1.executeQuery("SELECT MAX(codeClient) FROM clients ORDER BY ID DESC");
c = r.getInt("codeClient");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return c;
}
voici l'erreur afficher dans le main
Exception in thread "main" java.lang.NullPointerException
at projet.Index.main(Index.java:33)
A voir également:
- Fonction pour gerer une requete dans la base de donnée
- Fonction si et - Guide
- Base de registre - Guide
- Gerer stockage google - Guide
- Formules mathématiques de base - Télécharger - Études & Formations
- Exemple base de données access à télécharger gratuit ✓ - Forum Logiciels
2 réponses
salut..
Pour extraire les données d'une base via une application il faut se positionner sur l'enregistrement (ResultSet) cible.
ton code a ignorer ce la car tu a demandé à l'application d'extraire le contenu du champ ("codeClient") sans indiquer qu'il enregistrement cible.
pour faire ça tu doit ajouter cette ligne "r.next();"ou "r.first();" après la ligne suivante :
r = st1.executeQuery("SELECT MAX(codeClient) FROM clients ORDER BY ID DESC"); ou "r.first();"
cette ligne va te positionner sur le premier enregistrement de la table (clients).
Pour extraire les données d'une base via une application il faut se positionner sur l'enregistrement (ResultSet) cible.
ton code a ignorer ce la car tu a demandé à l'application d'extraire le contenu du champ ("codeClient") sans indiquer qu'il enregistrement cible.
pour faire ça tu doit ajouter cette ligne "r.next();"ou "r.first();" après la ligne suivante :
r = st1.executeQuery("SELECT MAX(codeClient) FROM clients ORDER BY ID DESC"); ou "r.first();"
cette ligne va te positionner sur le premier enregistrement de la table (clients).