w1213096890
德莱華
2015-08-22 15:33
采纳率: 93.3%
浏览 3.8k

android在数据库中查找相应的数据时出错。

Cursor cursor=myDatabase.rawQuery("select ids,title,times from goodtime" , null);
cursor.moveToFirst();
while(!cursor.isAfterLast()){
int id=cursor.getInt(cursor.getColumnIndex("ids"));
String title=cursor.getString(cursor.getColumnIndex("title"));
String times=cursor.getString(cursor.getColumnIndex("times"));
System.out.println(title);
System.out.println(cursor.getColumnIndex("bj"));
String beijing=cursor.getString(cursor.getColumnIndex("bj"));

    上面是我的代码,title还是可以正常查找的,但是bj这个变量的值确实-1,同时报出错误java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.notebook/com.example.notebook.Notebook}: java.lang.IllegalStateException: Couldn't read row 0, col -1 from CursorWindow.  Make sure the Cursor is initialized correctly before accessing data from it.
    这是我创建的表:
    String ml="create table goodtime(ids integer PRIMARY KEY autoincrement,title text,content text,times text,ptpath text,mppath text,vdpath text,islock integer,password text,bj text)";
    arg0.execSQL(ml);
    网上说有可能大小写不对,我仔细查看了变量名都是一致的啊
    求各位大神帮我看一下,指点一下我,先谢谢了!
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • devmiao
    devmiao 2015-08-22 15:58
    已采纳

    看下你的数据库中有没有对应的记录

    点赞 评论
  • qq_17326933
    FF0425 2015-08-22 16:06

    查询结果为空的话,会出现这个错误。先判断cursor中是否有数据。cursor.getCount()

    点赞 评论
  • sina_2831808769
    sina_2831808769 2015-08-23 12:27

    看下你的数据库中有没有对应的记录

    点赞 评论
  • u013027031
    墨客独觞 2015-08-24 11:31

    你查询的时候好像没有查“bj”这个字段吧

    点赞 评论

相关推荐