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

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

コードは以下の通り

		// ファイル名
		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();
		}

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

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

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

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

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク