我是否能够在一个ContentResolver的列的查询运行SQL的功能呢? [英] Am I able to run SQL functions on a ContentResolver columns query?
问题描述
我如果Android的ContentResolver的支持使用过的列SQL函数当您查询ContentProvider的疑惑。如sqlite3的日期函数,来获得一个特定的日期格式,或者DATEDIFF?
I am wondering if Android's ContentResolver supports using SQL functions over the columns when you query a ContentProvider. Such as SQLite3 date functions, to get a specific date format, or datediff?
你怎么知道这个多少?
推荐答案
没有。即使你找到它适用于某些情况下,你不能假设它的工作原理一刀切。
No. Even if you find it works for some cases, you cannot assume it works across the board.
的ContentProvider
是一个假象。一个给定的的ContentProvider
可能使用的SQLite。它可能会使用XML文件。它可能会使用JSON文件。它可能会使用CSV文件。它可能会使用一些第三方的SQL数据库。它可能会使用一些第三方对象数据库。它可能没有太多的本地内容的,而是有它的东西了在云中,通过Web服务调用到达。你甚至不能确保一个的ContentProvider
一定支持经典SQL WHERE
条款 - 一些XML支持的的ContentProvider
可以使用XQuery语法来代替。
ContentProvider
is a facade. A given ContentProvider
might use SQLite. It might use XML files. It might use JSON files. It might use CSV files. It might use some third-party SQL database. It might use some third-party object database. It might not have much of any local content, but instead have its stuff out in the cloud, reached via Web service calls. You can't even be sure that a ContentProvider
necessarily supports a classic SQL WHERE
clause -- some XML-backed ContentProvider
might use XQuery syntax instead.
因此,你绝对不能依靠一个的ContentProvider
甚至不知道什么 DATEDIFF
是
Hence, you definitely cannot rely upon a ContentProvider
even knowing what datediff
is.
这篇关于我是否能够在一个ContentResolver的列的查询运行SQL的功能呢?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!