Android sqlite显示表

Android sqlite显示表,android,sqlite,Android,Sqlite,是否可以将数据库中的表列表查询到游标中?我不知道如何在android中实现ShowTables方法。 一种方法是将“收集器”表中的所有表存储为记录,但这是一种解决方法 注:我不需要所有的表,只需要那些以“PR_”开头的表(我知道如何在查询中处理这个问题,但我不知道在这种情况下这是否重要)。在SQLite中,您应该能够查询SQLite_MASTER。但没有在Android上测试过。参见我找到了解决方案。 在SQLiteOpenHelper类中: public Cursor showAllTable

是否可以将数据库中的表列表查询到游标中?我不知道如何在android中实现ShowTables方法。 一种方法是将“收集器”表中的所有表存储为记录,但这是一种解决方法


注:我不需要所有的表,只需要那些以“PR_”开头的表(我知道如何在查询中处理这个问题,但我不知道在这种情况下这是否重要)。

在SQLite中,您应该能够查询SQLite_MASTER。但没有在Android上测试过。参见

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

public Cursor showAllTables(){
        String mySql = " SELECT name FROM sqlite_master " + " WHERE type='table'             "
                + "   AND name LIKE 'PR_%' ";
        return ourDatabase.rawQuery(mySql, null);
    }
在活动中:

     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) + "");

                 }

             }
Cursor c=info.showAllTables();
if(c.moveToFirst())
{
做{
添加(c.getString(0));
}而(c.moveToNext());
}
如果(todoItems.size()>=0)
{
对于(int i=0;i