Могу ли я выполнять функции SQL для запроса столбцов ContentResolver?


Мне интересно, поддерживает ли Android ContentResolver использование функций SQL над столбцами при запросе ContentProvider. Например, функции даты SQLite3, чтобы получить определенный формат даты, или datediff?

Что ты об этом знаешь?

1 3

1 ответ:

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

ContentProvider это фасад. Данный ContentProvider может использовать SQLite. Он может использовать XML-файлы. Он может использовать файлы JSON. Он может использовать CSV-файлы. Он может использовать какую-то стороннюю базу данных SQL. Он может использовать какую-то стороннюю базу данных объектов. Он может не иметь большого количества любого локального контента, но вместо этого его содержимое находится в облаке, доступном через вызовы веб-служб. Вы даже не можете быть уверены, что a ContentProvider обязательно поддерживает классическое предложение SQL WHERE-Некоторые XML-поддерживаемые ContentProvider могут использовать синтаксис XQuery вместо этого.

Следовательно, вы определенно не можете полагаться на ContentProvider, даже зная, что такое datediff.