Android sqlite показать таблицы - PullRequest
3 голосов
/ 10 марта 2012

Можно ли запросить список таблиц в базе данных в Cursor?Я не знаю, как реализовать метод шоу таблиц в Android.Один из способов - сохранить все таблицы в таблице «сборщика» как записи, но это обходной путь.

PS: мне не нужны все таблицы, только те, которые начинаются с «PR_» (я знаю, какобрабатывать это в запросах, но я не знаю, имеет ли это значение в данном случае).

Ответы [ 2 ]

7 голосов
/ 10 марта 2012

Я нашел решение.В классе 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) + "");

                 }

             }
2 голосов
/ 10 марта 2012

В SQLite вы должны иметь возможность запрашивать SQLITE_MASTER. Не проверено это на Android, хотя. Смотри http://sqlite.org/faq.html#q7

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...