2011-01-13 6 views
5

誰かがAndroidでコードを介してテーブル名のリストを取得するSQLを知っていますか?私は.tablesをコマンドシェルで実行しますが、これはコードでは機能しません。それはメタデータなどと関係がありますか?Androidテーブルのリストを取得

答えて

3

はそれを手に入れた:

SELECT * FROM sqlite_master WHERE type='table' 
10

ちょうど同じことをしなければなりませんでした。これはうまくいくようです:

public ArrayList<Object> listTables() 
    { 
     ArrayList<Object> tableList = new ArrayList<Object>(); 
     String SQL_GET_ALL_TABLES = "SELECT name FROM " + 
     "sqlite_master WHERE type='table' ORDER BY name"; 
     Cursor cursor = db.rawQuery(SQL_GET_ALL_TABLES, null); 
     cursor.moveToFirst(); 
     if (!cursor.isAfterLast()) { 
      do { 
       tableList.add(cursor.getString(0)); 
      } 
      while (cursor.moveToNext()); 
     } 
     cursor.close(); 
     return tableList; 
    } 
+0

このテーブルのリストをログに記録すると、どうすれば可能ですか? –

+0

ありがとうございました。わたしにはできる。 –

+0

テーブル名を1つずつ別々にフェッチしたい場合は??? –

関連する問題