JDBC - 尝试在更新1个用户余额时创建ATM应用程序,更新所有用户余额

时间:2014-05-08 11:25:09

标签: db2

我正在尝试使用JDBC和DB2编写程序,用户可以在其中存入或取出余额。但是我存入一个用户所有用户余额正在更新。我该怎么办才能更新一个用户余额。

Statement stmt = conn.createStatement();

   ResultSet rs=stmt.executeQuery("select * from customers");


 while(rs.next())
   {
        String ename= rs.getString("cos_name");
        String id = rs.getString("cos_pws");

        if(ename.equalsIgnoreCase(uname) && id.equalsIgnoreCase(upass))
        {
            System.out.println("enter 1 deposit");
            System.out.println("enter 2 withdraw");
            System.out.println("enter 3 balance");
            System.out.println("enter 4 for exit");

            int input=scan.nextInt();
            switch(input)
                {

                        case 1: System.out.println("enter deposit amount");
                        double deposit=scan.nextFloat();

                        Double bal=rs.getDouble("cos_balance");
                        if(deposit>0)
                        {
                            bal=bal+deposit;
                            String st2="update customers set cos_balance="+bal;
                            stmt.executeUpdate(st2);


                            System.out.println(bal);
                        }
                        break;

1 个答案:

答案 0 :(得分:0)

您的声明中需要一个where子句,以便您只更新选定的客户余额,例如其中id = 1