Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何通过知道id和列来获取特定表字段的值?(SQLite)_Java_Android_Sql_Database_Sqlite - Fatal编程技术网

Java 如何通过知道id和列来获取特定表字段的值?(SQLite)

Java 如何通过知道id和列来获取特定表字段的值?(SQLite),java,android,sql,database,sqlite,Java,Android,Sql,Database,Sqlite,我试图通过查找值的\u id从数据库中读取值 private static final String DATABASE_NAME = "database.db"; private static final String TABLE_NAME = "database"; private static final String COL1 = "_id"; private static final String COL2 = "Name"; public String getData(in

我试图通过查找值的
\u id
从数据库中读取值

private static  final String DATABASE_NAME = "database.db";
private static final String TABLE_NAME = "database";
private static final String COL1 = "_id";
private static final String COL2 = "Name";

    public String getData(int id, String col){
        SQLiteDatabase db = this.getReadableDatabase();
        Cursor cursor = db.rawQuery("SELECT value FROM " + TABLE_NAME +" WHERE
 /* id = _id and col = COL2 */", null);
    }

您必须稍微更改查询

"SELECT * FROM " + TABLE_NAME + " WHERE " + COL1 + "=" + id
将其替换为传递给方法
rawQuery()

上述解决方案将起作用,但这可能不是使用
rawQuery()
方法的最佳方式,因为我们没有使用它的第二个参数
selectionArgs
。详情请参阅

因此,最终的解决方案如下所示:

Cursor cursor = db.rawQuery("SELECT * FROM " + TABLE_NAME + " WHERE " + COL1 + "=?", new String[] { String.valueOf(id) });