Sqlite 数据库助手。制作一个 return 方法
Sqlite DatabaseHelper. make a return method
我如何在我的 databaseHelper(从 SQLiteOpenHelper 扩展)中创建一个方法class,return是一个用户的一些数据的字符串。
例如
public String getUserPassword (String username){
..
return password;
}
我只是不知道如何制作一个游标来搜索用户名(这是主键)并找到相同的用户然后 return 他的密码。
您可以使用 SQLiteDatabase
class 的方法 rawQuery()
其中 return 是 Cursor
。
对于此方法,您必须传递 2 个参数:
- sql 语句是
SELECT
语句
- 一个包含用户名值的数组,该数组将在
WHERE
子句中用于 return 密码
(如果存在的话)。
此方法将 return 密码或 null
如果在 table 中找不到用户名:
public String getUserPassword (String username){
String password = null;
SQLiteDatabase db = this.getWritableDatabase();
String sql = "SELECT password FROM tablename WHERE username = ?";
Cursor c = db.rawQuery(sql, new String[] {username});
if (c.moveToNext()) password = c.getString(0);
c.close();
db.close();
return password;
}
这一行:
String sql = "SELECT password FROM tablename WHERE username = ?";
将 table 和列的名称更改为您在数据库中的名称。
我如何在我的 databaseHelper(从 SQLiteOpenHelper 扩展)中创建一个方法class,return是一个用户的一些数据的字符串。
例如
public String getUserPassword (String username){
..
return password;
}
我只是不知道如何制作一个游标来搜索用户名(这是主键)并找到相同的用户然后 return 他的密码。
您可以使用 SQLiteDatabase
class 的方法 rawQuery()
其中 return 是 Cursor
。
对于此方法,您必须传递 2 个参数:
- sql 语句是
SELECT
语句 - 一个包含用户名值的数组,该数组将在
WHERE
子句中用于 return 密码 (如果存在的话)。
此方法将 return 密码或 null
如果在 table 中找不到用户名:
public String getUserPassword (String username){
String password = null;
SQLiteDatabase db = this.getWritableDatabase();
String sql = "SELECT password FROM tablename WHERE username = ?";
Cursor c = db.rawQuery(sql, new String[] {username});
if (c.moveToNext()) password = c.getString(0);
c.close();
db.close();
return password;
}
这一行:
String sql = "SELECT password FROM tablename WHERE username = ?";
将 table 和列的名称更改为您在数据库中的名称。