I ', пытаюсь написать простой запрос на обновление для Sqlite db в приложении флаттера. Безуспешно.
Это набор кода, который я пробовал. Я попробовал как комментарий, так и комментарий.
Future<int> insertDeposit(DepositModel depositModel) async {
int result = 0;
Database db = await this.database;
try {
result = await db.update(depositTable, depositModel.toMap(),
where: "$dUsername=?", whereArgs: [depositModel.username]);
// String sql = "UPDATE $depositTable SET $dAmount = ${depositModel.amount}, $dDate = ${depositModel.date} WHERE $dUsername = ${depositModel.username}";
// result = await db.rawUpdate(sql);
} catch (e) {
print("Exception in Deposit = $e");
}
return result;
}
Я получаю сообщение об ошибке с сегментом без комментариев
E/SQLiteLog( 3834): (20) statement aborts at 13: [UPDATE deposit_tbl SET id = NULL, username = ?, amount = ?, note = NULL, date = ? WHERE username=?] datatype mismatch
I/flutter ( 3834): Exception in Deposit = DatabaseException(datatype mismatch (code 20)) sql 'UPDATE deposit_tbl SET id = NULL, username = ?, amount = ?, note = NULL, date = ? WHERE username=?' args [gireesh@gmail.com, 200.0, Apr 18, 2019, gireesh@gmail.com]}
Ошибка при использовании закомментированного сегмента
I/flutter ( 3834): Exception in Deposit = DatabaseException(near "18": syntax error (code 1): , while compiling: UPDATE deposit_tbl SET amount = 200.0, date = Apr 18, 2019 WHERE username = gireesh@gmail.com) sql 'UPDATE deposit_tbl SET amount = 200.0, date = Apr 18, 2019 WHERE username = gireesh@gmail.com' args []}