模拟银行转账
假设ID为卡号
ID1向ID2转10元
步骤:
1、更新ID1账户(减10元)
2、查询ID2账户的钱是否超过最大值,是则抛异常,否则正常通过
3、更新ID2账户(加10元)
4、如果出异常,则回滚
表里面的数据
------------------------------------------------------------------------
mysql> select * from user;
+----+----------+------------+-------+
| id | name | birthday | money |
+----+----------+------------+-------+
| 1 | zhangsan | 2011-02-08 | 100 |
| 2 | lisi | 2011-03-21 | 220 |
| 3 | 王五 | 2011-03-29 | 320 |
| 4 | 李白 | 1234-05-06 | 220 |
+----+----------+------------+-------+
4 rows in set (0.00 sec)
代码
------------------------------------------------------------------------
package com.test.jdbc;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TxTest {
public static void main(String[] args) throws SQLException {
test();
}
public static void test() throws SQLException {
Connection conn = null;
Statement stmt