Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 从Sqlite读取行时,应用程序停止_Android_Sqlite - Fatal编程技术网

Android 从Sqlite读取行时,应用程序停止

Android 从Sqlite读取行时,应用程序停止,android,sqlite,Android,Sqlite,我可以在SQlite数据库中插入行,但当我尝试从SQlite检索行时,我的应用程序停止工作。这是密码 String model; public String getDataFromDB(){ SQLiteDatabase db = dbHelper.getReadableDatabase(); Cursor cursor = db.query(Announcement.TABLE, new String[] {Announcement.KEY_Annou

我可以在SQlite数据库中插入行,但当我尝试从SQlite检索行时,我的应用程序停止工作。这是密码

String model;
    public String getDataFromDB(){
        SQLiteDatabase db = dbHelper.getReadableDatabase();

        Cursor cursor = db.query(Announcement.TABLE, new String[] {Announcement.KEY_Announcement}
                , Announcement.KEY_Announcement,
                null, null, null, null, null);

        if (cursor.moveToFirst()){

                model = cursor.getString(cursor.getColumnIndex(Announcement.KEY_Announcement));

        }

        return model;
    }
有人能说出真正的问题在哪里吗

编辑:我从android监视器复制的文本, 最后我发现了一个例外,就是这里

00-09 03:52:12.610 335-335/com.example.anum.lmslite E/AndroidRuntime: FATAL EXCEPTION: main
                                                                      java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.anum.lmslite/com.example.anum.lmslite.Announcement_Activities.CS101_Announcement}: android.database.sqlite.SQLiteException: no such table: Announcement (code 1): , while compiling: SELECT  * FROM Announcement
                                                                          at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2343)
                                                                          at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)
                                                                          at android.app.ActivityThread.access$600(ActivityThread.java:162)
                                                                          at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
                                                                          at android.os.Handler.dispatchMessage(Handler.java:107)
                                                                          at android.os.Looper.loop(Looper.java:194)
                                                                          at android.app.ActivityThread.main(ActivityThread.java:5392)
                                                                          at java.lang.reflect.Method.invokeNative(Native Method)
                                                                          at java.lang.reflect.Method.invoke(Method.java:525)
                                                                          at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:838)
                                                                          at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
                                                                          at dalvik.system.NativeStart.main(Native Method)
                                                                       Caused by: android.database.sqlite.SQLiteException: no such table: Announcement (code 1): , while compiling: SELECT  * FROM Announcement
                                                                          at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
                                                                          at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:886)
                                                                          at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:497)
                                                                          at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
                                                                          at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
                                                                          at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
                                                                          at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
                                                                          at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1314)
                                                                          at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1253)
                                                                          at com.example.anum.lmslite.StudentRepo.getDataFromDB(StudentRepo.java:91)
                                                                          at com.example.anum.lmslite.Announcement_Activities.CS101_Announcement.onCreate(CS101_Announcement.java:46)
                                                                          at android.app.Activity.performCreate(Activity.java:5122)
                                                                          at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1084)
                                                                          at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)
                                                                          at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395) 
                                                                          at android.app.ActivityThread.access$600(ActivityThread.java:162) 
                                                                          at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364) 
                                                                          at android.os.Handler.dispatchMessage(Handler.java:107) 
                                                                          at android.os.Looper.loop(Looper.java:194) 
                                                                          at android.app.ActivityThread.main(ActivityThread.java:5392) 
                                                                          at java.lang.reflect.Method.invokeNative(Native Method) 
                                                                          at java.lang.reflect.Method.invoke(Method.java:525) 
                                                                          at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:838) 
                                                                          at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605) 
                                                                          at dalvik.system.NativeStart.main(Native Method)
00-09 03:52:12.610 335-335/com.example.anum.lmslite E/AndroidRuntime:FATAL EXCEPTION:main
java.lang.RuntimeException:无法启动活动组件信息{com.example.anum.lmslite/com.example.anum.lmslite.Announcement\u Activities.CS101\u Announcement}:android.database.sqlite.SQLiteException:没有这样的表:Announcement(代码1):,编译时:SELECT*FROM Announcement
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2343)
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)
在android.app.ActivityThread.access$600(ActivityThread.java:162)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
位于android.os.Handler.dispatchMessage(Handler.java:107)
位于android.os.Looper.loop(Looper.java:194)
位于android.app.ActivityThread.main(ActivityThread.java:5392)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:525)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:838)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
在dalvik.system.NativeStart.main(本机方法)
原因:android.database.sqlite.SQLiteException:无此表:公告(代码1):,编译时:从公告中选择*
位于android.database.sqlite.SQLiteConnection.nativePrepareStatement(本机方法)
位于android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:886)
位于android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:497)
位于android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
位于android.database.sqlite.SQLiteProgram.(SQLiteProgram.java:58)
位于android.database.sqlite.SQLiteQuery(SQLiteQuery.java:37)
位于android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
位于android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1314)
位于android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1253)
位于com.example.anum.lmslite.StudentRepo.getDataFromDB(StudentRepo.java:91)
位于com.example.anum.lmslite.Announcement\u Activities.CS101\u Announcement.onCreate(CS101\u Announcement.java:46)
位于android.app.Activity.performCreate(Activity.java:5122)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1084)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)
在android.app.ActivityThread.access$600(ActivityThread.java:162)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
位于android.os.Handler.dispatchMessage(Handler.java:107)
位于android.os.Looper.loop(Looper.java:194)
位于android.app.ActivityThread.main(ActivityThread.java:5392)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:525)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.r上
@Override
public void onCreate(SQLiteDatabase db) {
    // Your code goes here to create a table Announcement
    db.execSQL("CREATE TABLE IF NOT EXISTS Announcement ("
       + "_id INTEGER PRIMARY KEY AUTOINCREMENT "
       + " COLUMN_ONE TEXT, "
       + " COLUMN_TWO TEXT)"
    );
}