当前位置: 首页 > news >正文

从零开始网站建设网站关键字优化

从零开始网站建设,网站关键字优化,b2c模式图,可以免费做试卷题目的网站MySQL 中的事务是由存储引擎实现的。在 MySQL 中,只有 InnoDB 存储引擎支持事务。事务处理可用于维护数据库的完整性,确保批处理的 SQL 语句要么执行要么根本不执行。事务用于管理 DDL、DML 和 DCL 操作,例如插入、更新和删除语句&#xff0c…

MySQL 中的事务是由存储引擎实现的。在 MySQL 中,只有 InnoDB 存储引擎支持事务。事务处理可用于维护数据库的完整性,确保批处理的 SQL 语句要么执行要么根本不执行。事务用于管理 DDL、DML 和 DCL 操作,例如插入、更新和删除语句,这些语句默认是自动提交的。

 

例如,在银行转账时,必须保证转账绝对安全,这时需要事务参与:

update account set money = money - 200 where id = 1; 
update account set money = money + 200 where id = 2;

假如在第一次update之后,出现了意外、异常,没有执行第二次update,这时,转账会出现异常。

一、操作

MySQL的事务操作主要有以下三种:

1. 开启事务:Start Transaction

任何DML语句(insert、update、delete)被执行,标志着事务的开启。

BEGIN;
-- 或
START TRANSACTION;

2. 提交事务:Commit Transaction

成功完成后,所有DML语句操作历史记录和底层硬盘数据将同步一次。

COMMIT;

3. 回滚事务:Rollback Transaction

失败结束时,清除所有DML语句操作历史记录。

ROLLBACK;

之前所有的SQL操作其实都是有事务的,只是MySQL自动帮我们完成了。 每次执行 SQL 时,MySQL 都会自动为我们提交事务。 因此,如果要手动控制事务,就必须关闭MySQL的事务自动提交。

在 MySQL 中直接使用 SET 来改变 MySQL 的自动提交模式:

set autocommit=0; --禁止自动提交 
set autocommit=1; --开启自动提交 
create database if not exists mydb12_transcation;
use mydb12_transcation;
-- 创建账户表
create table account(id int primary key, -- 账户idname varchar(20), -- 账户名money double -- 金额
);--  插入数据
insert into account values(1,'zhangsan',1000);
insert into account values(2,'lisi',1000);-- 设置MySQL的事务为手动提交(关闭自动提交)
select @@autocommit;
set autocommit = 0;-- 模拟账户转账
-- 开启事务 
begin;
update account set money = money - 200 where name = 'zhangsan';
update account set money = money + 200 where name = 'lisi';
-- 提交事务
commit;-- 如果转账中的任何一条出现问题,则回滚事务
rollback;

二、特性

三、隔离级别

隔离(Isolate)顾名思义,就是将一个事务与另一个事务隔离开来,为什么要隔离呢? 如果一个事务正在操作的数据被另一个事务修改或删除,最终的执行结果可能不符合预期。 不这样做可能会导致其他问题。

读未提交(Read uncommitted):一个事务可以读取另一个未提交事务的数据。在最底层,任何情况下都没有保证,会造成脏读。

读已提交(Read committed):一个事务只有在另一个事务提交后才能读取数据,这样可以避免脏读导致不可重复读。

可重复读(Repeatable read):即在读取数据时(事务启动),不再允许修改操作,可以避免脏读和不可重复读的发生,但会造成幻读。

串行(Serializable):是最高的事务隔离级别。在这个层次下,事务是串行和顺序执行的,可以避免脏读、不可重复读和幻读。但是这种事务隔离级别效率低,对数据库性能消耗较大,所以一般不使用。

MySQL 的默认隔离级别是Repeatable read。

-- 查看隔离级别 
show variables like '%isolation%'; /*
设置隔离级别
set session transaction isolation level 级别字符串
级别字符串:read uncommitted、read committed、repeatable read、serializable
*/-- 设置read uncommitted
set session transaction isolation level read uncommitted;-- 设置read committed
set session transaction isolation level read committed;-- 设置repeatable read
set session transaction isolation level repeatable read;-- 设置serializable
set session transaction isolation level serializable;
http://www.hrbkazy.com/news/11502.html

相关文章:

  • 自己做港澳台照片回执网站百度推广公司
  • 传单设计网站seo优化名词解释
  • 视频网站开发与制作免费网站服务器
  • 金华市住房建设局网站广告推广的软件
  • 扫描网站特征dede软文世界
  • 做精美ppt的网站黑帽seo技术有哪些
  • java可以做网站吗产品推广营销方案
  • 短视频素材库大全百度的搜索引擎优化
  • 重庆专业微网站建设国外搜索引擎排名
  • 制作网页网站费用属于资本性支出吗互联网营销师考试题及答案
  • 柴油网站怎么做有效的网站推广方式
  • 凡科网建设网站如何修改源代码长沙 建站优化
  • 网站开发软件解决方案网游百度搜索风云榜
  • 网站开发属于什么模式免费p站推广网站入口
  • 网站建设课程 谷建优化网站怎么做
  • 做动态网站用什么语言公众号怎么做文章推广
  • 成都网站建设哪家公司好百度一下免费下载安装
  • 做网站服务器设计素材网站
  • 医药招商网站大全免费性能优化工具
  • 黔西南州网站建设公司torrent种子搜索引擎
  • 青岛seo整站优化哪家专业网页在线代理翻墙
  • 2015做哪个网站能致富亚马逊seo关键词优化软件
  • 四模网站成都网站关键词排名
  • 抓取的网站如何做seo公司网站建设费
  • 获取网站真实ip宁波seo营销
  • 政府部门建立网站的作用关键词优化seo多少钱一年
  • 深圳网站开发平台百度seo是什么
  • pageadmin如何做网站谷歌官方网站登录入口
  • asp.net手机网站开发教程产品推广营销
  • 建设银行官网登录惠州seo优化