2013-07-08 38 views
0

我的数据已成功添加到database.i中,通过调试我的代码进行检查。但是当我使用游标读取该数据,它抛出以下异常: java.lang.IllegalStateException: Couldn't read row 0, col -1 from CursorWindow. Make sure the Cursor is initialized correctly before accessing data from it.这里是我的数据库辅助函数代码:在android中从sqlite数据库通过光标读取数据时出现异常

       `///get schools 
        public ArrayList<SchoolModel> getSchools() { 

         school.clear(); 

         SQLiteDatabase db = this.getReadableDatabase(); 
         Cursor cursor = db.rawQuery("select * from School", null); 
         if ((cursor.getCount() >0)){ 
          if (cursor.moveToFirst()) { 
           do { 
            SchoolModel item = new SchoolModel(); 
            item.SchoolID = cursor.getInt(cursor 
              .getColumnIndex("SchoolID ")); 
            item.Address= cursor.getString(cursor 
              .getColumnIndex("Address")); 
            item.Cell= cursor.getString(cursor 
              .getColumnIndex("Cell")); 
            item.ContactPerson= cursor.getString(cursor 
              .getColumnIndex("ContactPerson")); 
            item.Description= cursor.getString(cursor 
              .getColumnIndex("Description")); 
            item.Phone= cursor.getString(cursor 
              .getColumnIndex("Phone")); 
            item.AreaID = cursor.getInt(cursor 
              .getColumnIndex("AreaID")); 


            school.add(item); 

           } while (cursor.moveToNext()); 
          } 
         } 
         cursor.close(); 
         db.close(); 
         return school; 
        } 

谁能告诉我什么我做错了什么?

回答

1
item.SchoolID = cursor.getInt(cursor .getColumnIndex("SchoolID ")); 

可能消除资本d后的枝条空间可以帮助

+0

三江源这么多....它现在的工作:) –

+0

欢迎您。将答案标记为已接受 – Blackbelt

相关问题