2010-05-10 6 views
1

Comment puis-je obtenir par programme les noms de toutes les tables dans une base de données JavaDB? Existe-t-il une instruction SQL spécifique sur JDBC que je peux utiliser pour cette fonction ou toute fonction intégrée dans JDBC? Je vais l'utiliser pour exporter les tables au format XML, et je voudrais le faire de cette façon afin de ne manquer aucune table de la base de données lors de l'exportation.Comment puis-je obtenir le nom de toutes les tables d'une base de données JavaDB?

+0

Voir http://stackoverflow.com/questions/2780284/how-to-get-all-table-names-from-a-database –

Répondre

6

Avec un con open connexion, faire

DatabaseMetaData meta = con.getMetaData(); 
    ResultSet res = meta.getTables(null, null, null, 
    new String[] {"TABLE"}); 
    System.out.println("List of tables: "); 
    while (res.next()) { 
    System.out.println(
     " "+res.getString("TABLE_CAT") 
     + ", "+res.getString("TABLE_SCHEM") 
     + ", "+res.getString("TABLE_NAME") 
     + ", "+res.getString("TABLE_TYPE") 
     + ", "+res.getString("REMARKS")); 
    } 
    res.close(); 

EDIT: Votre question est sur les tables voir http://java.sun.com/j2se/1.5.0/docs/api/java/sql/DatabaseMetaData.html#getTables(java.lang.String, java.lang.String, java.lang.String, java.lang.String [])

Questions connexes