【问题标题】:Select a row and get data (Android Studio SQLlite)选择一行并获取数据(Android Studio SQLite)
【发布时间】:2016-03-29 02:51:52
【问题描述】:

我有一个包含两列的表(productnameanswer)。 当我输入一个数字时,光标需要转到该行并获取该数据。 例如,如果我将 5 作为数字给 QuestionIDc1 光标应该转到 productname 列中的第 5 个单元格,并且 c2 光标应该转到 answer 列中的第 5 个单元格。

请看下面的代码...

public void getexactrow(String QuestionID){
    this._QuestionID=QuestionID;

    SQLiteDatabase db = getWritableDatabase();
    String colomn1 = "SELECT " +COLUMN_PRODUCTNAME+ " FROM " + TABLE_PRODUCTS + " WHERE 1";
    String colomn2 = "SELECT " +COLUMN_ANSWER+ " FROM " + TABLE_PRODUCTS + " WHERE 1";

    Cursor c1 = db.rawQuery(colomn1, null);
    Cursor c2 = db.rawQuery(colomn2, null);

    c1.move(Integer.parseInt(_QuestionID));
    c2.move(Integer.parseInt(_QuestionID));

    if (c1.getString(c1.getColumnIndex("productname")) != null) {
         _SendQuestion = c1.getString(c1.getColumnIndex("productname"));

    }

    if (c2.getString(c2.getColumnIndex("answer")) != null) {
        _SendAnswer = c2.getString(c2.getColumnIndex("answer"));

    }
}

【问题讨论】:

  • 这是我的字符串列表 private static final int DATABASE_VERSION = 1;私有静态最终字符串 DATABASE_NAME = "qulo.db"; public static final String TABLE_PRODUCTS = "que";公共静态最终字符串 COLUMN_ID = "_id";公共静态最终字符串 COLUMN_PRODUCTNAME = "产品名称"; public static final String COLUMN_ANSWER = "answer";
  • 你遇到了什么问题?
  • 当我给 QuestionID 2。 c1 游标转到第二列的第一行。而不是第一列的第二行。谢谢你的回复

标签: java android sqlite android-cursor


【解决方案1】:

更新代码,以下面的代码为例,使用单个光标并删除以 1 为值的 where 子句

public void getexactrow(String QuestionID){

SQLiteDatabase db = getWritableDatabase();
String colomn1 = "SELECT " +COLUMN_PRODUCTNAME+ ","+COLUMN_ANSWER+" FROM " + TABLE_PRODUCTS;
Cursor c1 = db.rawQuery(colomn1, null);

c1.move(Integer.parseInt(QuestionID));

if (c1.getString(c1.getColumnIndex("productname")) != null) {
     _SendQuestion = c1.getString(c1.getColumnIndex("productname"));
}

if (c1.getString(c1.getColumnIndex("answer")) != null) {
    _SendAnswer = c1.getString(c1.getColumnIndex("answer"));

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-21
    • 1970-01-01
    • 2019-05-08
    • 2017-07-12
    • 2021-12-01
    • 2012-03-26
    • 2019-02-27
    相关资源
    最近更新 更多