Android sqlite显示表

erd*_*ter 3 sqlite android

是否可以将数据库中的表列表查询为Cursor?我不知道如何在android中实现show tables方法.一种方法是将所有表存储在"收集器"表中作为记录,但这是一种解决方法.

PS:我不需要所有的表只是那些以"PR_"开头的表(我知道如何在查询中处理这个,我不知道在这种情况下是否重要).

erd*_*ter 7

我找到了解决方案.在SQLiteOpenHelper类中:

public Cursor showAllTables(){
        String mySql = " SELECT name FROM sqlite_master " + " WHERE type='table'             "
                + "   AND name LIKE 'PR_%' ";
        return ourDatabase.rawQuery(mySql, null);
    }
Run Code Online (Sandbox Code Playgroud)

在活动中:

     Cursor c = info.showAllTables();
             if (c.moveToFirst())
             {
             do{
                todoItems.add(c.getString(0));

                }while (c.moveToNext());
             }
             if (todoItems.size() >= 0)
             {
                 for (int i=0; i<todoItems.size(); i++)
                 {
                     Log.d("TODOItems(" + i + ")", todoItems.get(i) + "");

                 }

             }
Run Code Online (Sandbox Code Playgroud)