Как обновить данные с помощью ContentProvider? - PullRequest
1 голос
/ 06 февраля 2012

Как я могу выполнить этот sql с провайдером контента, как показано ниже:

update dtrips set dtp_day_idx=dtp_day_idx+2 where tp_id=1

Мой код Java такой:

    DTrip dTrip = new DTrip();
    ContentValues values = createContentValues(dTrip);
    values.put("dtp_day_idx" ,...);
    String select ="tp_id="+tripId;
    mContentResolver.update(DTripColumns.CONTENT_URI, values, select, null);

Может кто-нибудь помочь мне исправить код?Спасибо.

1 Ответ

1 голос
/ 06 февраля 2012

Добавьте идентификатор строки к URI контента следующим образом: (при условии, что DTripColumns.CONTENT_URI - URI контента вашего провайдера)

final Uri uri = ContentUris.withAppendedId(DTripColumns.CONTENT_URI, tripId);
mContentResolver.update(uri, values, null, null);

Вот дополнительная информация: http://developer.android.com/guide/topics/providers/content-provider-basics.html

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