SQLite 数据库拒绝更新,我不确定为什么

SQLite database refuses to update and I'm not sure why

我正在使用这两种方法来更新我正在编写的银行应用程序的余额,但数据库拒绝更新,我不确定为什么。

获取加多少的函数:

public void addIncome(String cardNum,Scanner scanner){
    System.out.println("Enter income: ");
    int income = scanner.nextInt();
    scanner.nextLine();
    dataBase.addBalance(income,cardNum);
}

为查询准备的语句和函数:

private final String ADD_BALANCE = ("UPDATE card SET balance=balance+? WHERE number=?");

public void addBalance(int amount, String number){
       try (Connection con = this.dataSource.getConnection();
         final var sql = con.prepareStatement(ADD_BALANCE)){
           sql.setInt(1, amount);
           sql.setString(2,number);
           sql.executeUpdate();
       }catch (SQLException throwables) {
           throwables.printStackTrace();
       }
}

您缺少对 commit 的调用,这意味着事务将在连接关闭时隐式回滚(在 try 结束时)。

try (Connection con = this.dataSource.getConnection();
     final var sql = con.prepareStatement(ADD_BALANCE)) {
    sql.setInt(1, amount);
    sql.setString(2, number);
    sql.executeUpdate();
    con.commit(); // HERE
}