[[JAVAの記事一覧]] &topicpath; *目次 [#c8bf02c2] #contents *JDBC テーブル一覧 [#h34e692f] ODBCでhelloworldという定義を済ませてあるとすると下記のコードでできた。 確認したDBはAccess import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class HelloTableList { public static void main(String[] args) { try { // ドライバクラスをロード Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // データベースへ接続 Connection con = DriverManager.getConnection("jdbc:odbc:helloworld"); // ステートメントオブジェクトを生成 Statement stmt = con.createStatement(); DatabaseMetaData dmd = con.getMetaData(); ResultSet rs = null; String types[] = { "TABLE" }; rs = dmd.getTables(null, null,"%", types); try { while(rs.next()){ System.out.println(rs.getString("TABLE_TYPE") + ":"); System.out.println(rs.getString("TABLE_NAME") + "\n"); } } finally { rs.close(); } stmt.close(); con.close(); } catch (Exception e) { e.printStackTrace(); } } } *%のエンコード [#p54cfcac] 文字列に%を使いたい場合は%25でおきかえておこう。エンコードすると%と認識してくれるぞ。 public static String escape(String data) { return data.replaceAll("%", "%25"); }