9 votes

Quel est le type de retour d'une requête "count" contre MySQL en utilisant Java JDBC ?

String query = "SELECT COUNT(*) AS count FROM table1";
ResultSet rs = DBConnection.executeQuery(query);

Le code ci-dessus fonctionne bien ; cependant :

long count = rs.getLong("count");

Cela ne fonctionne pas, cela provoque une SQLException. Comment puis-je obtenir des données à partir du ResultSet ?

7voto

ZenMaster Points 4209
long tmpLong = rs.getLong(1); 

devrait fonctionner d'après ce dont je me souviens.

EDIT :

bien sûr :

rs.next();

3voto

Petar Minchev Points 24864

Avez-vous appelé rs.next() avant d'appeler rs.getLong("count");

0voto

Czar Pino Points 1960

rs.getLong a 2 versions rs.getLong(java.lang.String) y rs.getLong(int) . Pour la version string, utilisez :

long count = rs.getLong("COUNT(*)");

Puisque le nom de la colonne est COUNT(*)

En fonction de la requête utilisée :

SELECT COUNT(*) AS count FROM table1

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X