我在打开数据的时候,如果是用filename="test.db",然后包括下面注释掉的创建代码,都不会出错
- Java code
String filename="/sdcard/test/test.db"; //String filename="test.db"; File file=new File(filename); if(file.exists()){ SQLiteDatabase db = openOrCreateDatabase(filename,Context.MODE_PRIVATE, null); /*String sql="Create table solar_info(id integer primary key autoincrement,value float);"; db.execSQL(sql); sql="insert into solar_info values(1,100);"; db.execSQL(sql); sql="insert into solar_info values(2,200);"; db.execSQL(sql);*/
但是当我用上面的语句打开SD卡上数据库的文件时候就出错了,
感觉问题应该是出在Context.MODE_PRIVATE上,这个选项该怎么写
- Java code
SQLiteDatabase db = openOrCreateDatabase(filename,Context.MODE_PRIVATE, null);
------解决方案--------------------
1.你声明了读写SD卡权限没有?
2.是否有其他程序同时打开了该数据库
3.该数据库创建的时候是以什么方式创建的