如何使用where条件从数据库获取行数?未定义where和whereArgs参数,并且无法在查询中编写变量
Future<int>GetRows(String Username,String Password) async{
var dbClient = await db;
return Sqflite.firstIntValue(
await dbClient.rawQuery(
"SELECT COUNT(*) FROM $Table WHERE $CoulmnUserName = $Username AND
$CoulmnPassword = $Password",
)
);
}
获取行数
int Row = await db.GetRows(_data.Username,_data.Password);
行== 0
答案 0 :(得分:0)
在where子句中测试String值时,应使用SQLite参数(?
)。这样的事情应该起作用:
Future<int> getRowCount(String username, String password) async {
var dbClient = await db;
var result = await dbClient.query(table,
columns: ['COUNT(*)'],
where: '$columnUsername = ? AND $columnPassword = ?',
whereArgs: [username, password]);
return firstIntValue(result);
}
答案 1 :(得分:-1)
我认为您可以尝试以下代码:-
for x in doc4:
print(x.text, x.pos_, x.dep_)