извлекать данные из базы данных, которая содержит более одной информации - PullRequest
0 голосов
/ 08 декабря 2011

Я хочу получить данные из sqlite. Пользователь может иметь более 1 балла, и я хочу показать его. он может показать, если у пользователя только один балл, но пустой экран, если у пользователя более одного балла.

Это мой код

ScoreDetailActivity.java

public class ScoreDetailActivity extends Activity {

    protected TextView userName;
    protected TextView score;
    protected int user_Id;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.scoredetail);

    user_Id = getIntent().getIntExtra("USER_ID", 0);
    SQLiteDatabase db = (new DatabaseUsername(this)).getWritableDatabase();
    Cursor cursor = db.rawQuery("SELECT alm._id, alm.nama, alm.jekel, sc._id, sc.score, sc.userId FROM almag alm LEFT OUTER JOIN score sc ON alm._id = sc.userId WHERE alm._id = ?",
                            new String[]{""+user_Id});

    if (cursor.getCount() == 1)
    {
            cursor.moveToFirst();

            userName = (TextView) findViewById(R.id.userName);
            userName.setText(cursor.getString(cursor.getColumnIndex("nama")));

            score = (TextView) findViewById(R.id.score);
            score.setText(cursor.getString(cursor.getColumnIndex("score")));


    }

}}

scoredetail.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
    <TextView
            android:id="@+id/userName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>
    <TextView
            android:id="@+id/score"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

Я надеюсь, что кто-то может помочь. Спасибо

1 Ответ

2 голосов
/ 08 декабря 2011
cursor.getCount() == 1

означает, что вы выполняете этот код, только если курсор имеет ТОЧНО одну строку.

В любом случае, если вы также хотите иметь возможность отображать более одного результата, вам следует переосмыслить свой макет (возможно, более подходящим будет просмотр списка).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...