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) });