Android Sqlite数据库架构

Pau*_*aul 9 sqlite android

我想我已经用android创建了一个sqllite数据库,但每次我去做一个插入它声称一个列不存在.如何查看模式,是在对象创建时调用的onCreate方法?

wts*_*g02 11

你可以用代码来做.Sqlite有一个名为"sqlite_master"的表,它保存架构信息.

    /**
     * Get all table Details from the sqlite_master table in Db.
     * 
     * @return An ArrayList of table details.
     */
    public ArrayList<String[]> getDbTableDetails() {
        Cursor c = db.rawQuery(
                "SELECT name FROM sqlite_master WHERE type='table'", null);
        ArrayList<String[]> result = new ArrayList<String[]>();
        int i = 0;
        result.add(c.getColumnNames());
        for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
            String[] temp = new String[c.getColumnCount()];
            for (i = 0; i < temp.length; i++) {
                temp[i] = c.getString(i);
            }
            result.add(temp);
        }

        return result;
    }
Run Code Online (Sandbox Code Playgroud)

更简单的方法是在模拟器上运行它.

  1. 打开ddms视角
  2. 查找数据/数据/ PACKAGENAME/database/YOURFILE
  3. 单击图中右上方的db按钮.

打开 在此输入图像描述