-1

我想知道如何传递从我的数据库类(即 DBUser.java)的列中检索到的值,并将其分配给另一个类的变量?. 我在我的 DBUser.java 中尝试过这种方法:

public String getNumber() throws SQLException  
{  
    String number;
    Cursor mCursor = db.query(DATABASE_TABLE, new String[] {KEY_NUMBER}, null, null, null, null, null);

    number = mCursor.getString(mCursor.getColumnIndex(KEY_NUMBER)); // KEY_NUMBER ="numbers"
    mCursor.close();

    return number; // I think I'm missing something here???? IDK
}

这是我的主类中的方法,我想传递列的值:

public void onACU (View view) {
    String messageToSend = "ACU ON";

    DBUser dbUser = new DBUser(AleccMainActivity.this);  
    dbUser.open();  // I opened the DB
    // recipient is a global variable.
    recipient = dbUser.getNumber();//then I assigned the method in my string var thinking that the value will be passed to it.
    dbUser.close(); // then i close the DB

    SmsManager.getDefault().sendTextMessage(recipient, null, messageToSend, null,null);
}

我的直觉告诉我,我的 db.query 和 return 语句似乎不正确,所以请告诉我如何让它工作。虽然我是 Java 新手。谢谢!

4

1 回答 1

0

即使光标只有一行,您也必须调用 moveToFirst() 或 moveToNext()。

于 2013-02-02T19:00:47.040 回答