我正在使用SQLite数据库,但现在我在使用查询时遇到了问题。 例如,如果使用这样的查询:
SQLiteDatabase db = mHelper.getReadableDatabase();
String parameter = mypar;
String sql = SELECT color, name FROM table WHERE name = '" + parameter + "';
Cursor c = db.rawQuery(sql, null);
while (c.moveToNext()) {
String color = c.getString(0);
String name = c.getString(1);
}
c.close();
db.close();
一切正常
但是如果参数有一个顶点
String parameter = mypar';
我得到了一个例外
Caused by: android.database.sqlite.SQLiteException: near "r": syntax error (code 1):
我该如何解决这个问题?谢谢
答案 0 :(得分:1)
这是我的解决方案,工作正常!!试试吧
String parameter = mypar';
String sql = SELECT color, name FROM table WHERE name = ?;
Cursor c = db.rawQuery(sql, new String[] { parameter });