Ormlite转义string的方法?

有没有一种原生的Ormlite for Android转义string的方式?

例如,如果我想提供一个string:ormlite的转义函数,它需要作为ormlite的转义函数提供。

TestDao.queryForFirst(TestDao.queryBuilder().where().like("stats", stats) .prepare()) 

我尝试使用UpdateBuilder的escapeValue方法,但它只做了以下更改:'ormlite的转义func'。 它将单引号添加到语句的开始和结尾。 有一个本地支持转义string是安全的SQL注入?

如果不是的话,有什么办法呢?

谢谢!

我尝试使用UpdateBuilder的escapeValue方法,但它只做了以下更改:'ormlite的转义func'。 它将单引号添加到语句的开始和结尾。 有一个本地支持转义string是安全的SQL注入?

这是一个常见问题。 正确的方法是使用SelectArg参数,这样SQL就可以使用? types的构造。 这是另外一个关于这个问题的问题 。

 SelectArg selectArg = new SelectArg(stats); TestDao.queryForFirst( TestDao.queryBuilder().where().like("stats", selectArg).prepare()); 

以下是关于select-argfunction的文档:

http://ormlite.com/docs/select-arg

下面是ORMLite用户列表上的一些讨论:

http://groups.google.com/group/ormlite-dev/browse_thread/thread/71d07202404f97e7

http://groups.google.com/group/ormlite-user/browse_thread/thread/7ced95c474031e3c

编辑:

正如@Moritz所指出的那样,如果您实际上正在更新数据库,那么您还可以使用带有UpdateBuilderSelectArg

 SelectArg arg = new SelectArg("Some value"); updateBuilder.updateColumnValue(MY_COLUMN, arg);