похоже, что SqlQuery поддерживает только sql, начинающийся с select *
? Разве он не поддерживает другой sql, который выбирает только некоторые столбцы, такие как select id, name from person
, и сопоставляет столбцы с соответствующим POJO?
Если я использую SqlFieldQuery для запуска sql, результатом будет QueryCursor списка (каждый список содержит одну запись результата). Но если sql начинается с select *
, содержимое этого списка будет отличаться от запроса поля, например: select id,name,age from person
Для select *
каждый список состоит из 3 частей:
первый элемент - это ключ кеша
второй элемент — это объект pojo, содержащий данные
хвостовой элемент — это значения для каждого столбца.
Почему это было так спроектировано? Если я не знаю, какой sql запускает SqlFieldsQuery, то мне нужны дополнительные усилия, чтобы выяснить, что содержит список.
select *
, это K и V. - person Tom   schedule 27.12.2016