/ / JDBC: vérifie la valeur de retour de procédure stockée - java, sql, postgresql, procédures stockées, jdbc

JDBC: vérification de la valeur de retour d'une procédure stockée - java, sql, postgresql, procédures stockées, jdbc

J'ai une procédure stockée sur mon postgresqlbase de données qui retourne une valeur entière. Lorsque j'appelle ma procédure client jdbc sous CallableStatement, lorsque j'appelle la méthode execute () sur l'objet CallableStatement, il ne renvoie qu'un booléen. Comment puis-je lire la valeur de retour effective de la fonction?

Réponses:

3 pour la réponse № 1

Vous devez obtenir un ResultSet via:

ResultSet rs = stmt.executeQuery("SELECT * FROM setoffunc()");
while (rs.next()) {
// read results
}
rs.close();
stmt.close();

Ou:

// Procedure call.
CallableStatement proc = conn.prepareCall("{ ? = call refcursorfunc() }");
proc.registerOutParameter(1, Types.OTHER);
proc.execute();
ResultSet results = (ResultSet) proc.getObject(1);
while (results.next()) {
// read results
}
results.close();
proc.close();

Voir la documentation pour plus de détails: http://jdbc.postgresql.org/documentation/80/callproc.html