微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android-在数据库中选择多个列

我想使用DatabaseHelper类选择多个列,以下sql语句对数据库本身有效,但在android内不起作用,仅返回第一列:

c = db.rawQuery("SELECT column1, column2, column3 FROM " + TABLE, null);

这仅返回第一列,但是在sqlite本身中执行时,所有列均被返回,我在这里遗漏了什么吗?

谢谢

解决方法:

单个查询不会返回列,您还必须提供要从数据库中检索的列的名称

public ArrayList getDataFromDatabase() 
{
   ArrayList array_list = new ArrayList();
   sqliteDatabase db = this.getReadableDatabase();
   Cursor res =  db.rawQuery( "give your query here", null );
   res.movetoFirst();
   while(res.isAfterLast() == false)
    {
     //give the name of columns you want to retrieve from database one by one  
     array_list.add(res.getString(res.getColumnIndex(column 1)));
     array_list.add(res.getString(res.getColumnIndex(column 2)));
     res.movetoNext();
}
  return array_list;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐