SQLite返回错误代码14 [英] SQLite returned an error code of 14

查看:916
本文介绍了SQLite返回错误代码14的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图从我的资产文件夹中复制现有的数据库,并对其执行一些操作。一切正常工作,但我在我的模拟器的日志文件中出现以下错误:

  sqlite返回:error code = 14,msg =无法在源行打开文件25467 

09-06 11:23:41.844:INFO / Database(22560):sqlite返回:错误代码= 14,msg =无法在源打开文件line 25467
09-06 11:23:41.885:ERROR / Database(22560):sqlite3_open_v2(/ data / data / com.dhani.Lazy / databases / LazyDB.sqlite,& handle,1,NULL )failed
09-06 11:23:41.885:WARN / System.err(22560):android.database.sqlite.SQLiteException:无法打开数据库文件
09-06 11:23:41.894: WARN / System.err(22560):在android.database.sqlite.SQLiteDatabase.dbopen(本地方法)
09-06 11:23:41.904:WARN / System.err(22560):在android.database。 sqlite.SQLiteDatabase。< init>(SQLiteDatabase.java:1849)
09-06 11:23:41.914:WARN / System.err(22560):在android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase。 java:820)
09-06 11:23:41.914:WARN / System.err(22560):at com.dharani.LazyApple.Database.DataBaseHelper.checkDataBase(DataBaseHelper.java:72)
09 -06 11:23:41.914:WARN / System.err(22560):at com.dharani.LazyApple.Database.DataBaseHelper.createDataBase(DataBaseHelper.java:47)
09-06 11:23:41.914:WARN /System.err(22560):at com.dharani.LazyApple.Database.DataBaseHelper.Login(DataBaseHelper.java:166)
09-06 11:23:41.914:WARN / System.err(22560):at com.dharani.LazyApple.Views.LoginView $ 1.onClick(LoginView.java:63)
09-06 11:23:41.934:WARN / System.err(22560):在android.view.View.performClick View.java:2485)
09-06 11:23:41.934:WARN / System.err(22560):在android.view.View $ PerformClick.run(View.java:9080)
09 -06 11:23:41.944:WARN / System.err(22560):在android.os.Handler.handleCallback(Handler.java:587)
09-06 11:23:41.944:WARN / System.err (22560):在android.os.Handler.dispatchMessage(Handler.java:92)
09-06 11:23:41.944:WARN / System.err(22560):在android.os.Looper.loop Looper.java:123)
09-06 11:23:41.944:WARN / System.err(22560):在android.app.ActivityThread.main(ActivityThread.java:3683)
09-06 11:23:41.964:WARN / System.err(22560):在java.lang.reflect.Method.invokeNative(本地方法)
09-06 11:23:41.964:WARN / System.err :at java.lang.reflect.Method.invoke(Method.java:507)
09-06 11:23:41.964:WARN / System.err(22560):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:839)
09-06 11:23:41.964:WARN / System.err(22560):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java: 597)
09-06 11:23:41.964:WARN / System.err(22560):at dalvik.system.NativeStart.main(本地方法)
解决方案

看到这个错误发生,如果你在你的清单中使用sharedUserId。如果更改应用程序的sharedUserId并重新安装应用程序,它不具有写入SQLite数据库所需的所有权。


I am trying to copy an existing database from my assets folder and execute some operations on it. Everything is working fine but I've gotten the following error in the log files of my emulator:

sqlite returned: error code = 14, msg = cannot open file at source line 25467

09-06 11:23:41.844: INFO/Database(22560): sqlite returned: error code = 14, msg = cannot open file at source line 25467
09-06 11:23:41.885: ERROR/Database(22560): sqlite3_open_v2("/data/data/com.dhani.Lazy/databases/LazyDB.sqlite", &handle, 1, NULL) failed
09-06 11:23:41.885: WARN/System.err(22560): android.database.sqlite.SQLiteException: unable to open database file
09-06 11:23:41.894: WARN/System.err(22560):     at android.database.sqlite.SQLiteDatabase.dbopen(Native Method)
09-06 11:23:41.904: WARN/System.err(22560):     at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1849)
09-06 11:23:41.914: WARN/System.err(22560):     at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:820)
09-06 11:23:41.914: WARN/System.err(22560):     at com.dharani.LazyApple.Database.DataBaseHelper.checkDataBase(DataBaseHelper.java:72)
09-06 11:23:41.914: WARN/System.err(22560):     at com.dharani.LazyApple.Database.DataBaseHelper.createDataBase(DataBaseHelper.java:47)
09-06 11:23:41.914: WARN/System.err(22560):     at com.dharani.LazyApple.Database.DataBaseHelper.Login(DataBaseHelper.java:166)
09-06 11:23:41.914: WARN/System.err(22560):     at com.dharani.LazyApple.Views.LoginView$1.onClick(LoginView.java:63)
09-06 11:23:41.934: WARN/System.err(22560):     at android.view.View.performClick(View.java:2485)
09-06 11:23:41.934: WARN/System.err(22560):     at android.view.View$PerformClick.run(View.java:9080)
09-06 11:23:41.944: WARN/System.err(22560):     at android.os.Handler.handleCallback(Handler.java:587)
09-06 11:23:41.944: WARN/System.err(22560):     at android.os.Handler.dispatchMessage(Handler.java:92)
09-06 11:23:41.944: WARN/System.err(22560):     at android.os.Looper.loop(Looper.java:123)
09-06 11:23:41.944: WARN/System.err(22560):     at android.app.ActivityThread.main(ActivityThread.java:3683)
09-06 11:23:41.964: WARN/System.err(22560):     at java.lang.reflect.Method.invokeNative(Native Method)
09-06 11:23:41.964: WARN/System.err(22560):     at java.lang.reflect.Method.invoke(Method.java:507)
09-06 11:23:41.964: WARN/System.err(22560):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
09-06 11:23:41.964: WARN/System.err(22560):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
09-06 11:23:41.964: WARN/System.err(22560):     at dalvik.system.NativeStart.main(Native Method)

Any suggestions on how to solve this problem?

解决方案

I have seen this error occur if you are using sharedUserId in your manifest. If you change the sharedUserId of an application and reinstall the application it does not have the required ownership to write to the SQLite database.

这篇关于SQLite返回错误代码14的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆