Comment obtenir le nombre de colonnes à partir d'une JDBC ResultSet?
Je suis en utilisant CsvJdbc (c'est un JDBC pilote pour csv, fichiers) pour accéder à un fichier csv. Je ne sais pas combien de colonnes du fichier csv contient. Comment puis-je obtenir le nombre de colonnes? Est-il JDBC-fonction pour cela? Je ne peux pas trouver toutes les méthodes en java.sql.ResultSet.
Pour accéder au fichier, j'utilise un code similaire à la exemple sur le CsvJdbc site web.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez obtenir de colonnes nombre de ResultSetMetaData:
ResultSetMetaData
la mise en œuvre des poignées de longueur variable CSV enregistrements. par exemple, Si vous avez spécifiéSELECT * FROM sample
et chaque ligne contenue un nombre différent de champs, le nombre de colonnes re-évaluée pour chaque ligne qui ont été itéré?rs.getMetaData()
méthode cher? Est-il interroger la base de données à chaque fois que son nom ou pas?rs.getMetaData()
appel peut être intensive; mais une fois que vous avez l'objetrsmd
ensuite, généralement, aucun des appels supplémentaires à la base de données sont effectuées lors de l'invocation de méthodes sur l'objet de métadonnées; toutes les métadonnées sont renseignées avec les getMetaData appel.Nombre de colonnes du jeu de résultats vous pouvez obtenir avec le code (en DB est utilisé PostgreSQL):
Mais vous pouvez obtenir plus de méta-informations sur les colonnes:
Et au moins mais pas moins, vous pouvez obtenir des informations non seulement sur la table mais sur DB trop, comment le faire, vous pouvez trouver ici et ici.
Après establising la connexion et l'exécution de la requête essayez ceci:
Cela permettra d'imprimer les données dans des colonnes et des nouvelles fois en ligne de la dernière colonne est atteint.