SQLJetを使う!テーブル一覧編

今回はデータベースファイルに入っているテーブル名を一覧表示させます。

コードは以下の通り

[java]
// ファイル名
String DB_name = "C:\\sample.sqlite";

// ファイル生成
File dbFile = new File(DB_name);

try{
// DBオブジェクト生成
SqlJetDb db = SqlJetDb.open(dbFile, true);

// 書き込みモード
db.beginTransaction(SqlJetTransactionMode.READ_ONLY);
try{
// スキーマ取得
ISqlJetSchema schema = db.getSchema();

// テーブル一覧取得
Set<String> table_list = schema.getTableNames();

// 一覧表示
for(String tableName : table_list){
System.out.println(tableName);
}

}finally{
db.commit();
}

}catch(SqlJetException e){
e.printStackTrace();
}
[/java]

データベースからスキーマを取得して、スキーマからテーブル一覧を取得します。

その際Setで一覧が帰ってくるので拡張for文で簡潔に表示させてみました。

載せるコードを短くしてみましたがどうでしょう?メソッドとしてそのままコピーできるような形にした方がいいですかね?

いや、そもそも需要自体あるかどうか厳しいところだな…。

コメント

タイトルとURLをコピーしました