在SQLite查询中转义字符

时间:2011-04-08 10:02:10

标签: android sqlite

我想从sqllite Db中选择一些数据。现在我遇到了一个问题。 我给出了如下原始查询:

String MY_QUERY0 = "select * from logs where log_name=\""+log_name.replace("'","\'")+"\"";

这可以帮助我避免应用程序在像

这样的数据时崩溃
  

姓名的

从Db拉出来。 但现在我必须用双引号解决相同的情况。像

这样的数据
  

“数据”

任何人都可以帮忙.. 提前谢谢。

1 个答案:

答案 0 :(得分:3)

您可以使用rawQuery:

q = "select * from logs where log_name = ?";
database.rawQuery(q, new String[] { log_name});

这不仅可以解决您的报价问题,而且还可以更加安全,因为它可以防止SQL注入。