有没有人遇到过与Honeycomb相关的数据库问题?我的应用程序使用附加的数据库(处理1.5到2.3)使用以下语句:

String newDb = "/data/data/com.stuff.app/databases/mydata.db";

db.execSQL("attach database ? as newDb", new String[] {newDb});

String[] columns = MY_COL_NAMES;

String orderBy = DEFAULT_SORT_ORDER;

Cursor cursor = db.query("newDb.mydata", columns, null, null, null, null, orderBy);


不管sqlite数据库文件(本地或SD卡)的实际位置如何,这都在工作(1.5到2.3)…但是,在Honeycomb中,db.query语句会导致“I/sqlitedatabasecpp(628):sqlite returned:error code=1,msg=no such table:newdb.mydata…”
我可以通过发出以下语句从sqlit3中手动附加数据库:
sqlite3>将database'/data/data/com.stuff.app/databases/mydata.db'附加为newdb;
任何帮助解决这一问题的人都将不胜感激。

最佳答案

在Honeycomb中,对“attach”SQL语句使用bindargs似乎不起作用。
请改为:
db.execsql(“附加数据库”“+newdb+”“作为newdb”);
这应该管用。

关于android - 蜂窝中的附加数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5108964/

10-08 23:26