Android:无法打开数据库文件

时间:2011-03-09 09:03:37

标签: android sqlite

当我尝试打开sqlite数据库时,它捕获了异常:

  

android.database.sqlite.SQLiteException:无法打开数据库文件。

我的代码是:

 final String  DATABASENAME   =    "MY_DB"; 
 SQLiteDatabase   objDb =  this.openOrCreateDatabase(DATABASENAME, MODE_PRIVATE, null);

被修改

这是很好的Android 2.2。 但它在android 2.1中遇到异常。

请帮帮我... 谢谢..

5 个答案:

答案 0 :(得分:2)

File sdcardfile = Environment.getExternalStorageDirectory();

db = SQLiteDatabase.openOrCreateDatabase(sdcardfile.getPath()
                                         + "/BadBrain/question.db", null);

确保“BadBrain”目录存在,或者您可以创建它!

答案 1 :(得分:1)

还请检查manifest.xml上的权限(android.permission.WRITE_EXTERNAL_STORAGE)。

答案 2 :(得分:1)

在JB设备上运行我的应用程序时遇到了同样的错误。我是因为他们改变了数据库路径/data/data/{package_name}/databases/。要解决使用Android内置API方法而不是硬编码路径

mContext.getDatabasePath(DATABASE_NAME).getPath();

答案 3 :(得分:0)

试试这样看。

SQLiteDataBase objDb = SQLiteDatabase.openDatabase(DATABASENAME, null, SQLiteDatabase.OPEN_READWRITE);

答案 4 :(得分:0)

你在表中设置了表android_meta数据和语言环境吗?

请看这里的第一步: http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/