SQL语言的四大类与三种提交方式的概念

SQL语言的四大类

Sql语言被分为四大类:数据查询语言(DQL),数据操纵语言(DML),数据定义语言(DDL),数据控制语言(DCL)。

 

1. 数据查询语言(DQL)

数据查询语言基本结构由select子句,from子句,where子句组成的查询块:

select [字段名] from [表或视图名] where [查询条件]

*注:show不属于数据查询语言,严格来说show属于数据控制语言(DCL)。

查询select是对表里的信息数据进行查看,而显示show是对表结构和库中存放的数据信息查看

2. 数据操纵语言(DML)

数据操纵语言是用来对表里存在的信息数据做修改,而本身的主要构成结构不会变动。主要有三种形式:

插入:insert

更新:update

删除:delete

3. 数据定义语言(DDL)

数据定义语言用来创建或修改数据库中的各种对象的结构——库、表、表引擎、字符集、视图、索引、同义词、聚簇

以及约束限制结构等;如:

create database/table/view/index/syn/cluster

alter table [表名] add/drop/change/modifiy column [字段] [字段定义] after [表存在的字段]

Drop table [表名];

truncate table [表名];

rename [原表名] to [新表名]

*注:数据定义语言是隐性提交的,不能rollback回滚

4. 数据控制语言(DCL)

  数据控制语言用来授予或回收访问数据库的某种特权,并控制数据库操纵实务发生的时间及效果,对数据库实行监如:

show:显示

  grant:授权

  rollback [工作点] to [保存点]:回退到某一点

  回滚到数据最进提交前的状态

  mysql>rollback;

  commit [工作点]:提交

 

显式提交和隐式提交以及自动提交概念

显式提交

所有的数据操纵语句都是要显式提交的,所谓显示提交就是要执行commit/rollback

数据操纵语句执行完后,处理的数据都会放在回滚段中,等待用户进行提交或者回滚,

当用户执行commit/rollback后,放在回滚段中的数据就会被删除。

显式提交是由你决定是否提交,这种事务允许你自己决定哪批工作必须成功完成,否则所有部分都不能完成。

目的是为了给自己的事务定界。

隐式提交

mysql数据库隐式提交的三种情况:

1.     正常执行完数据定义语言(DDL)包括create,alter,drop,truncate,rename

2.     正常执行完数据控制语言(DCL)包括grant,revoke

3.     正常退出mysql客户端,没有明确发出commit/rollback

其他的如数据定义语言(DDL),都是隐式提交的。就是不用进行commit/rollback

在运行数据操控语言后,mysql已经进行了隐式提交。

例如create table,在运行指令后表已经建好了,并不在需要进行显式提交。

隐式事务又称自动提交事务,由系统自动帮你完成并不需要你来提交。

自动提交

在插入、修改、删除语句执行后,系统将自动进行提交。显式提交转变为隐式提交的过程称为自动提交。

转载于:https://my.oschina.net/hillsowl/blog/684166

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值