亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

當從數據庫獲取數據時僅獲取行的第一個索引時,我想要每行的所有數據

當從數據庫獲取數據時僅獲取行的第一個索引時,我想要每行的所有數據

蕪湖不蕪 2023-09-20 17:34:56
我是 android 和 java 新手...想要從 sqlite 中的每一行獲取所有數據。public Cursor fetch() {        dh = this.getReadableDatabase();        Cursor cursor = this.dh.query(TABLE_INVOICE, new String[]{ITEM_NAME, ITEM_PRICE, QTY, ITEM_TAX, BILL_NO, DATE, CUST_NAME, CUST_ADDR, INVOICE_TOT, GRAND_TOT, TIME}, null, null, null, null, null);        if (cursor != null) {            cursor.moveToFirst();        }    return cursor;}數據獲?。篊ursor cursor = datahandler.fetch();//                        String response = datahandler.getInvoice(itemName,invoice,mprice,billno,mdate,qty);        ITEM_NAME = cursor.getString(0).trim();        ITEM_PRICE = cursor.getString(1).trim();        QTY = cursor.getString(2).trim();        ITEM_TAX = cursor.getString(3).trim();        BILL_NO = cursor.getString(4).trim();        DATE = cursor.getString(5).trim();        CUST_NAME = cursor.getString(6).trim();        CUST_ADDR = cursor.getString(7).trim();        INVOICE_TOT = cursor.getString(8).trim();        GRAND_TOT = cursor.getString(9).trim();        TIME = cursor.getString(10).trim();
查看完整描述

2 回答

?
鴻蒙傳說

TA貢獻1865條經驗 獲得超7個贊

重復調用cursor.moveToNext()直到返回false,并提取其間的數據。


Cursor cursor = datahandler.fetch();


do {

    // extract data from cursor for current row

} while (cursor.moveToNext());

為了防止出現空值,Cursor您還應該調用 -- 并測試 -- 的返回值moveToFirst()。moveToFirst()您在檢索 時調用Cursor,但從未測試結果。


if (cursor.moveToFirst()) {

    do {

        // extract data from cursor for current row

    } while (cursor.moveToNext());

}


查看完整回答
反對 回復 2023-09-20
?
當年話下

TA貢獻1890條經驗 獲得超9個贊

從數據庫返回列表中的所有項目。


public List<Records> fetch() {

    List<Records> records = new ArrayList<Records>();

    dh = this.getReadableDatabase();

    Cursor cursor = this.dh.query(TABLE_INVOICE, new String[]{ITEM_NAME, ITEM_PRICE, QTY, ITEM_TAX, BILL_NO, DATE, CUST_NAME, CUST_ADDR, INVOICE_TOT, GRAND_TOT, TIME}, null, null, null, null, null);

    if ( cursor.moveToFirst()) {

        do {

            ITEM_NAME = cursor.getString(0).trim();

            ITEM_PRICE = cursor.getString(1).trim();

            QTY = cursor.getString(2).trim();

            ITEM_TAX = cursor.getString(3).trim();


            records.add(new Records(ITEM_NAME,ITEM_PRICE,QTY,ITEM_TAX)); 

        } while (cursor.moveToNext());

    }

    return records;

}

然后List<Records> records = db.fetch(); 循環記錄列表


查看完整回答
反對 回復 2023-09-20
  • 2 回答
  • 0 關注
  • 137 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號