没有这样的表android_metadata,有什么问题?

use*_*788 53 sqlite android

我正在复制一个预先存在的数据库,/data/data/packagename/databases使用从using-your-own-sqlite-database-in-android-applications中学到的代码

复制后,我在打开数据库时收到以下日志消息:

没有这样的表android_metadata

我是否需要创建一个名为android_metadata的表?我需要将值插入此数据库表中

非常感谢

小智 107

实际上,通过更多阅读,我发现我需要SQLiteDatabase.NO_LOCALIZED_COLLATORS在调用时使用标志 SQLiteDatabase.openDatabase()- 这不再导致问题.


dIv*_*nGh 30

使用

SQLiteDatabase.openDatabase(dbPath, null,SQLiteDatabase.NO_LOCALIZED_COLLATORS | SQLiteDatabase.CREATE_IF_NECESSARY);
Run Code Online (Sandbox Code Playgroud)

要么

SQLiteDatabase.openDatabase(dbPath, null,SQLiteDatabase.OPEN_READWRITE);
Run Code Online (Sandbox Code Playgroud)

  • 真的很简单就是这样.只需向数据库添加写权限,android就会自动添加该表. (2认同)

Vis*_*har 2

我已经使用该链接中给出的内容很长一段时间了。

它有效..再次检查您的数据库是否创建了表?

我更喜欢在 firefox 中安装 SQLite Manager 插件来进行 sqlite 数据库操作..完成同一链接中提到的所有过程后..

查看http://www.devx.com/wireless/Article/40842/1954

它包含所有数据库操作。