如何获取Android SQL lite中数据库中存在的所有表的名称

我无法找到一种从android中的数据库获取/转储表名的方法.我知道:查询

SELECT * 
  FROM sqlite_master

上面的语句会生成一个指向所有数据库/视图/表的元数据的游标.但是如何在我的数据库获取我创建的所有表的名称

解决方法:

如果要检索数组中的信息(或任何可以遍历字符串的结构),可以创建如下方法

public String[] getdbnames(){
    String[] result;
    try {
        StringBuilder sb = new StringBuilder();
        sb.append("SELECT name FROM sqlite_master "); 
        sb.append("WHERE type IN ('table','view') AND name NOT LIKE 'sqlite_%' ");
        sb.append("UNION ALL ");
        sb.append("SELECT name FROM sqlite_temp_master "); 
        sb.append("WHERE type IN ('table','view') ");
        sb.append("ORDER BY 1");

        Cursor c = _db.rawQuery(sb.toString(), null);
        c.movetoFirst();

        result = new String[c.getCount()];
        int i = 0;
        while (c.movetoNext()) {
            result[i]= c.getString(c.getColumnIndex("name"));
            i++;
        }
        c.close();
    }
    catch(sqliteException e){
        Log.e("OOPS", e);
    }
    return result;
}

相关文章

SQLite架构简单,又有Json计算能力,有时会承担Json文件/RES...
使用Python操作内置数据库SQLite以及MySQL数据库。
破解微信数据库密码,用python导出微信聊天记录
(Unity)SQLite 是一个软件库,实现了自给自足的、无服务器...
安卓开发,利用SQLite实现登陆注册功能