SQLJetを使う!テーブル内容取得編

やってまいりました、テーブル内容を取得する方法です

[java]
public String[][] getTable(String tableName) throws SqlJetException{

// テーブル内容格納変数
String[][] table_ar = null;

// 読み込みモード
db.beginTransaction(SqlJetTransactionMode.READ_ONLY);

// テーブル取得
ISqlJetTable table = db.getTable(tableName);

// テーブルオープン
ISqlJetCursor cursor = table.open();

// 項目名取得
String[] columnNames = getColumnNames(tableName);

// 配列の要素数確定
table_ar = new String[(int)cursor.getRowCount()][columnNames.length];

// カーソルが最後でなければ取得
if(!cursor.eof()){

// 列カウント、行カウント
int c_count, r_count = 0;

do{
c_count = 0;

// 列数分ループ
for(String str : columnNames){

table_ar[r_count][c_count] = cursor.getString(str);
c_count++;

}
r_count++;

// カーソルを次へ(行数分ループ)
}while(cursor.next());
}

db.commit();

return table_ar;
}
[/java]

dbはSqlJetDb型の変数です。最終的に全部のメソッドを実装したコード載せるつもりです。

最初のSQLJetを使う!記事から見ていただけるとわかるはず…

テーブルを開いて、カーソルで一個ずつ配列に入れていくという作業になります。

公式のチュートリアルに沿って作ってみました。

このメソッドの戻り値をそのままJTableに入れるとちょうど縦横の組み合わせが合うようになっています。

今回は横幅が長くなってしまったので見づらいかと思いますが、ソース上にマウスポインタを移動させるとソース枠右上にアイコンが表示されるので、一番左の「view source」をクリックすると新しいタブ(あるいはウィンドウ)でソースコードだけ表示されます。ご活用ください。

コメント

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