Android SQLite – 命名参数

前端之家收集整理的这篇文章主要介绍了Android SQLite – 命名参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发使用sqlite作为本地存储的 Android应用程序.我需要在SQL查询中使用参数,但我找到的所有示例都包含unamed参数,如下所示:
INSERT INTO SoMetable(ColA,ColB,ColC) VALUES (?,?,?);

我想知道 – Android上的sqlite是否支持命名参数?像这样的东西而不是问号..

INSERT INTO SoMetable(ColA,ColC) VALUES (@paramA,@paramB,@paramC);

sqlite本身支持这一点(根据文档https://www.sqlite.org/lang_expr.html).

提前致谢

解决方法

Android数据库API仅允许通过索引进行参数绑定.

这不会阻止您在sql中使用命名参数,但仍然必须使用正确的索引来绑定它们.
除文档或重用参数外,这几乎没用:

db.rawQuery("SELECT * FROM Tab WHERE A = @search OR B = @search",new String[]{ search });

猜你在找的Android相关文章