[英]StringBuilder constructor accepts a StringBuilder object - why?
[英]Why execSQL accepts Object[] and raw Query String[]
我想有一个选项来调用'rawQuery',并传递一个整数列表,但看起来我做不到:所有'rawQuery'方法都需要字符串数组...
为什么? 我可以为每个传递的int对象调用'toString',但是在这里看不到任何逻辑。 为什么Google不提供接受对象列表的rawQuery?
是否有任何限制或约束?
可能我想念什么吗?
谢谢。
可能是因为rawQuery不是首选的查询方法。 而且由于sqlite列基本上没有类型,所以它们可能不想假设对要传递的内容调用toString。
SQLite支持列上的“类型相似性”概念。 列的类型相似性是存储在该列中的数据的推荐类型。 这里的重要思想是建议类型,而不是必需类型。 任何列仍可以存储任何类型的数据。 只是有些列(如果有选择)将更喜欢使用一种存储类而不是另一种。 列的首选存储类称为其“关联性”。
您是否有理由要使用rawQuery
而不是execSQL
?
如参数bindArgs的文档中所述,参数列表中不接受任何复杂对象:
参量
sql要执行的SQL语句。 不支持用分号分隔的多个语句。
bindArgs只支持byte [],String,Long和Double的bindArgs。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.