【MySQL】SQL语言的分类 DDL、DML、DQL、DCL

【MySQL】SQL语言的分类 DDL、DML、DQL、DCL

在这里插入图片描述



  SQL(Structure Query Language)语言是数据库的核心语言。SQL语言共分为四大类:数据定义语言DDL数据操纵语言DML数据查询语言DQL数据控制语言DCL


1. DDL(Data Definition Language,数据定义语言)

  主要用于维护存储数据的结构,这种结构包括数据库,表、视图、索引、同义词、聚簇等。

代表指令:

  • create 创建数据库和数据库的一些对象

  • drop 删除数据库/表、索引、条件约束以及数据表的权限等

  • alter 修改数据库表的定义及数据属性


2. DML(Data Manipulation Language,数据操纵语言)

  主要用于对数据库对象中包含的数据进行操作

代表指令:

  • insert 向数据库中插入一条数据

  • delete 删除表中的一条或者多条记录

  • updata 修改表中的数据


3. DQL(Data Query Language,数据查询语言)

  主要用于查询数据库当中的数据

代表指令:

  • selete 查询表中的数据
  • from 查询哪张表、视图
  • where 约束条件

4. DCL(Data Control Language,数据控制语言)

  主要控制数据库对象的权限管理事务实时监视

代表指令:

  • grant分配权限给用户
  • revoke废除数据库中某用户的权限
  • rollback 退回到某一点 (回滚)
  • commit 提交

补充:commit

  在数据库的插入、删除和修改操作时,只有当事务在提交到数据库时才算完成。在事务提交前,只有操作数据库的这个人才能有权看到所做的事情,别人只有在最后提交完成后才可以看到。提交数据有三种类型:显式提交、隐式提交及自动提交。

  • 显式提交
    用commit命令直接完成的提交为显式提交。commit;

  • 隐式提交
    用SQL命令间接完成的提交为隐式提交。这些命令有:

    alterauditcommentconnectcreatedisconnectdropexitgrantnoauditquitrevokerename

  • 自动提交
    若把autocommit设置为on,则在插入、修改、删除语句执行后,系统将自动进行提交。set autocommit on;

猜你喜欢

转载自blog.csdn.net/Sunnyside_/article/details/115347487