SQLite Query to String - PullRequest
       2

SQLite Query to String

3 голосов
/ 31 декабря 2011

Я хочу поместить содержимое таблицы в строку, если выбран элемент списка.

Мой фактический запрос

    public Cursor webUrlQuery() {
    String webUrlTmp = "select weburl FROM stations WHERE name=" + "'" + name + "'";
    return database.rawQuery(webUrlTmp, null);
}

работает.Но если я войду в logcat через

Log.d(TAG, "webUrl = " + webUrlQuery());

или

Log.d(TAG, "webUrl = " + webUrlQuery().toString());

, я получу что-то вроде этого:

12-30 23: 25: 15.828: D / StationsActivity (10576): streamUrl = android.database.sqlite.SQLiteCursor@4132fce0

Как получить строку, которую я могу использовать?Кажется, что метод cursor.toString () не работает.

Ответы [ 3 ]

1 голос
/ 31 декабря 2011

Почему вы пытаетесь зарегистрировать объект Cursor?Если вы хотите распечатать запрос, вам нужно использовать webUrlTmp.

Кстати, вы действительно должны рассмотреть возможность привязки параметров вашего запроса.

1 голос
/ 31 декабря 2011

Это зависит от того, сколько результатов вы ожидаете.Если вы ожидаете только одного результата, вы можете использовать что-то вроде этого:

Cursor result = webUrlQuery();
result.moveToFirst();
String url = result.getString(result.getColumnIndex("weburl"));
Log.d(TAG, "webUrl = " + url);

Удачи!

1 голос
/ 31 декабря 2011

Cursor.toString() работает отлично - он возвращает строковое представление объекта Cursor. Предположительно, вы хотите Cursor.getString() (и я считаю, что сначала вам нужно будет использовать Cursor.moveToFirst(), чтобы указать на первую возвращенную строку).

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