初识SQL数据库之事务

来源:互联网 发布:网络商标注册费用 编辑:程序博客网 时间:2024/04/28 05:28

事务事务包含了一组数据库操作命令,这组命令要么全部执行,要么都不执行,是一个不可分割的工作逻辑单元。可以保持数据的完整性。功能实现原理:

•在我们的InnoDB表中,我们执行的SQL语句,都要先存入日志文件,然后再将执行结果提交到服务器,完成整个操作。

•我们这里将开始由MySQL所掌握的自我提交功能,转变为由我们手动操作的提交功能,当成功完成一组SQL语句,手动提交后,才真实改变数据库的操作。特性(ACID):

•原子性(Atomicity):执行一组SQL语句,他们中只要有一条语句执行失败,整个事务则都失败。

•一致性(Consisitency):在事务开始之前和事务结束以后,数据库的设定是一样的。

•隔离性(Isolation):当使用事务对数据进行操作时,我们另外的会话是无法对此条数据进行操作的。我们的InnoDB使用的是数据行锁。

•持久性(Durability):当事务成功,数据将提交到数据库,数据就被持久化了。

语法:1. SET @@autocommit = 0 ; (1:自动提交,0:手动提交)COMMIT ;手动提交ROLLBACK ; 回滚2. START TRANSACTION ; 启动事务COMMIT ; 成功后提交ROLLBACK ; 回到事务启动前的状态SAVEPOINT 点名 ; 设置标记,用于食用ROLLBACK TO 点名 回滚到此点状态。

0 0
原创粉丝点击