0

我试图获取标题等于我传入的字符串的行 ID。

我在语法上很不稳定,我一直在这个网站上冲浪,试图找到一个 Eclipse 喜欢的例子。通常它告诉我我提供的论点是无效的,但我似乎无法理解它。我尝试添加空值来填充其他参数,例如 groupBy,但它一直告诉我这些参数是错误的。

这是我的代码

private String[] folderID = {MySQLiteHelper.COLUMN_FOLDERID};
private String[] folderTitle = {MySQLiteHelper.COLUMN_FOLDERNAME};


public Cursor findFolderId(String i){
String[] select = {i + "=" + folderTitle};
Cursor cursor = database.query(MySQLiteHelper.TABLE_FOLDERS, folderID, "WHERE", select);
return cursor;

编辑:

这是典型的错误

SQLiteDatabase 类型中的方法 query(String, String[], String, String[], String, String, String) 不适用于参数 (String, String[], String, String[])

4

2 回答 2

1

你需要改变你的:

String[] columns = {"Column1", "Column2"}; // columns to select
String selection = "someCol = ?";
String[] args = {i}; // value added into where clause --> column = i
Cursor c = database.query(TABLE, columns, selection, args, null, null, null);

通常,列是您要获取的列,选择相当于 where 子句,args 是将被替换而不是?(这称为占位符)以相同顺序替换的值。

于 2013-03-13T22:59:29.770 回答
0
public Cursor findFolderId(String i){
String[] select = {i};
Cursor cursor = database.query(MySQLiteHelper.TABLE_FOLDERS, folderID, folderTitle + "=?", select);
return cursor;
于 2013-03-13T22:59:38.947 回答