Android SQLiteException参数

时间:2016-03-31 13:40:15

标签: android sqlite

我正在使用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):

我该如何解决这个问题?谢谢

1 个答案:

答案 0 :(得分:1)

这是我的解决方案,工作正常!!试试吧

String parameter = mypar';
String sql = SELECT color, name FROM table WHERE name = ?;
Cursor c = db.rawQuery(sql, new String[] { parameter });