我正在尝试使用内置的SQLite函数,但我不确定如何格式化查询。如何格式化WHERE
子句和可以进入的?
:
column [] = {"name"};
selectionArg [] = {"john};
Select name from mytable where id = "john"
db.query(mytable, column, id = ?, selectionArg, null,null,null);
我不是我可以测试它的地方,但是我试图在第一次就把它弄好。我不确定?
是"?"
还是id = + "?"
等等。我似乎无法找到任何格式的例子。
答案 0 :(得分:19)
对于查询:
select name from mytable where id = "john"
使用
(SQliteDatabase) db.query(
"mytable" /* table */,
new String[] { "name" } /* columns */,
"id = ?" /* where or selection */,
new String[] { "john" } /* selectionArgs i.e. value to replace ? */,
null /* groupBy */,
null /* having */,
null /* orderBy */
);
答案 1 :(得分:2)
您不能在问号周围使用引号
示例:
db.query(
true,
"tablename",
new String[] {
"col1",
"col2"
},
"col1 = ?",
new String[]{ "value" },
null,
null,
null,
null
);