zoukankan      html  css  js  c++  java
  • MySQL transaction

    MySQL事务操作

    1. 事务rollback

      mysql> start transaction;

      Query OK, 0 rows affected (0.00 sec)

       

      mysql> insert into tbtest(stu_ID,stu_Name) values(201,'stu_1');

      Query OK, 1 row affected (0.04 sec)

       

      mysql> select * from tbtest;

      +--------+-----------+----------+

      | stu_ID | stu_Name | stu_test |

      +--------+-----------+----------+

      | 123 | xiaoMing | NULL |

      | 124 | xiaoZhang | NULL |

      | 125 | xiaoLi | NULL |

      | 201 | stu_1 | NULL |

      +--------+-----------+----------+

      4 rows in set (0.00 sec)

       

      mysql> rollback;

      Query OK, 0 rows affected (0.06 sec)

       

      mysql> select * from tbtest;

      +--------+-----------+----------+

      | stu_ID | stu_Name | stu_test |

      +--------+-----------+----------+

      | 123 | xiaoMing | NULL |

      | 124 | xiaoZhang | NULL |

      | 125 | xiaoLi | NULL |

      +--------+-----------+----------+

      3 rows in set (0.00 sec)

       

      mysql> rollback;

      Query OK, 0 rows affected (0.00 sec)

       

    2. 事务commit

      mysql> start transaction;

      Query OK, 0 rows affected (0.00 sec)

       

      mysql> insert into tbtest(stu_ID,stu_Name) values(201,'stu_1');

      Query OK, 1 row affected (0.00 sec)

       

      mysql> select * from tbtest;

      +--------+-----------+----------+

      | stu_ID | stu_Name | stu_test |

      +--------+-----------+----------+

      | 123 | xiaoMing | NULL |

      | 124 | xiaoZhang | NULL |

      | 125 | xiaoLi | NULL |

      | 201 | stu_1 | NULL |

      +--------+-----------+----------+

      4 rows in set (0.00 sec)

       

      mysql> commit;

      Query OK, 0 rows affected (0.02 sec)

       

      mysql> select * from tbtest;

      +--------+-----------+----------+

      | stu_ID | stu_Name | stu_test |

      +--------+-----------+----------+

      | 123 | xiaoMing | NULL |

      | 124 | xiaoZhang | NULL |

      | 125 | xiaoLi | NULL |

      | 201 | stu_1 | NULL |

      +--------+-----------+----------+

      4 rows in set (0.00 sec)

       

    3. 计算上一条语句影响了多少行的两个相关函数

    MySQL 有两个函数来计算上一条语句影响了多少行

    1. found_rows()

    判断Select得到的行数用 found_rows();

     

    mysql> select * from tbtest;

    +--------+-----------+----------+

    | stu_ID | stu_Name | stu_test |

    +--------+-----------+----------+

    | 123 | xiaoMing | NULL |

    | 124 | xiaoZhang | NULL |

    | 125 | xiaoLi | NULL |

    | 201 | stu_1 | NULL |

    | 202 | stu_2 | NULL |

    | 203 | stu_3 | NULL |

    | 204 | stu_4 | NULL |

    | 205 | stu_4 | NULL |

    | 206 | stu_4 | NULL |

    +--------+-----------+----------+

    9 rows in set (0.00 sec)

    mysql> select found_rows();

    +--------------+

    | found_rows() |

    +--------------+

    | 9 |

    +--------------+

    1 row in set (0.00 sec)

    1. row_count()

    判断Update Delete影响的行数用row_count(); 注:MySQL中Update前后的值如果一样,row_count()为0,不像在SqlServer中的@@rowcount/Oracle中的rowcount,只要update到行,影响的行数就会大于0(无论前后字段的值是否发生了变化)

    mysql> insert into tbtest(stu_id, stu_name) values(207, 'stu_46');

    Query OK, 1 row affected (0.02 sec)

    mysql> select row_count();

    +-------------+

    | row_count() |

    +-------------+

    | 1 |

    +-------------+

    1 row in set (0.00 sec)

  • 相关阅读:
    winform 中xml简单的创建和读取
    睡眠和唤醒 进程管理
    [山东省选2011]mindist
    关于zkw流的一些感触
    [noip2011模拟赛]区间问题
    [某ACM比赛]bruteforce
    01、Android进阶Handler原理解析
    02、Java模式UML时序图
    04、Java模式 单例模式
    14、Flutter混合开发
  • 原文地址:https://www.cnblogs.com/BigBigLiang/p/5442129.html
Copyright © 2011-2022 走看看