1

こんにちは、私は Android プログラミングが初めてで、ユーザーがデータベースからデータを取得できるようにするサンプル アプリを作成しました。ただし、データは表示されませんが、表示されないだけでエラーメッセージは表示されません。データベースにデータがあることを確認しました。私のコードを確認してください。おそらくここで何かを忘れました。ありがとう

public void onClick(View arg){
    name = txtNameS.getText().toString();
    if(arg.getId()==R.id.btnfortune){
            searchRecord(count);
            lblmessageS1.setText(name); // this is just for me to check     if it will be displayed and it is.
            lblmessageS2.setText(message);
    }

 }



 public void searchRecord(int count) throws SQLException {
    Cursor rsCursor;

    String [] rsFields = {"mesNum","Message"};

   rsCursor = dbM.dbase.query("MessageFile", rsFields, "mesNum = " + count, null, null, null, null, null);
    rsCursor.moveToFirst();

    if (rsCursor.isAfterLast()==false){

        message = rsCursor.getString(1);
    }

    rsCursor.close();
 }

ちなみに count は 1 に初期化されており、データベースには 10 件のレコードがあります。データベースにはmesNumとMessageの2つの列があります。私が望むのは、メッセージ列のみを表示することです。

4

2 に答える 2

1
      // SQLiteDatabase sqldb
     Cursor rsCursor= sqldb.rawQuery("your query", null);
     if (rsCursor!= null) {
            if (rsCursor.moveToFirst()) {
                do {
                     // do here for get data   message = rsCursor.getString(1);
                   }while (cursor.moveToNext());
            }
            cursor.close();
        }
于 2013-03-09T07:14:05.823 に答える
0

配列に列名を1つだけ追加します

String [] rsFields = {"Message"};

    cursor = dbM.dbase.query(true,"MessageFile", rsFields, "yourcolumn= "+count, null, null, null, null, null);

while( cursor != null && cursor.moveToNext() ) 
{
  cursor.getString(0);
}
cursor.close();
于 2013-03-09T07:21:11.000 に答える