zoukankan      html  css  js  c++  java
  • MySQL中的事务

    MySQL中的事务性:

    MySQL的InnoDB引擎是支持事务性的,事务是由多条SQL语句组成,是一个连续的一组数据库操作。只有该组内的每一个操作都成功时,整个事务才执行成功。(例如银行转账操作,只有转账成功,原账户才会扣除相应金额。)

    事务的四大特性:ACID

    A:(原子性)

    每个事务是一个不可分割的单位,该事务中所有的操作都执行成功后,整个事务才算执行成功。

    C:(一致性)

    事务将数据库从一种状态转变为另一种状态,事务开始之前和结束之后数据库完整性约束不变。

    I:(隔离性)

    多个事务同时对数据库进行操作时,各个事务要进行隔离,保证事务之间不会相互干扰。

    D:(持久性)

    事务执行完成后一旦被提交,其结果是永久的,已经改变数据库,不会再回滚。

    MySQL中事务性操作语句:

    >begin;(开始一个事务)

    >insert,delete,select,update;(增删改查等语句)

    >rollback;(事务回滚,回到上次commit处)

    >commit;(事务确认,整个事务结束)

    MySQL事务处理开启方式:

    1、通过begin,rollback,commit语句执行事务操作

    2、通过set来改变mysql自动提交模式 :

    MySQL默认是自动提交执行结果的,即提交一个query时自动执行。可以通过set autocommit参数来修改。

    set autocommit = 0  禁止自动提交

    set autocommit = 1  开始自动提交

    当autocommit = 0 时,所有的sql都将被作为事务来处理,直到commit或者rollback来结束事务。

  • 相关阅读:
    @雅礼集训01/13
    @hdu
    @bzoj
    @hdu
    @bzoj
    @雅礼集训01/10
    @codeforces
    @spoj
    @bzoj
    @bzoj
  • 原文地址:https://www.cnblogs.com/ahaii/p/6214261.html
Copyright © 2011-2022 走看看