数据库之SQL语言的分类

结构化查询语言(Structured Query Language,简称SQL)是一种数据库查询和程序设计语言。本文将SQL语言分为五种,分别是DDL、DQL、DML、DCL和TCL。下面将详细叙述(为方便阅读,本文所有的SQL语句均为小写)。

一、DDL(Data Definition Language)

数据定义语言:创建、修改或删除数据库中表、视图、索引等对象的操作,常用命令为创建create、修改alter和删除drop。
1.库的管理
  1.库的创建:
    举例:create database if not exists books;//创建库books
  2.库的修改:
    举例:alter database books character set gbk;//更改库的字符集
  3.库的删除:
    举例:drop database if exists books;
2.表的管理
  1.表的创建:举例:
    create table if not exists author(//创建表author
      id int,
      au_name varchar(20),
      nation varchar(10)
    );
  2.表的修改:
    举例:alter table author add column annual double;//添加新列
    举例:alter table author drop column annual;//删除列
    举例:alter table author rename to book_author;
  3.表的删除
    举例:drop table if exists author;

二、DQL(Data Query Language)

数据查询语言:按照指定的组合、条件表达式或排序检索已存在的数据库中数据,不改变数据库中数据,常用命令为select。
  举例:select user_name from student;//查询student表中的user_name字段的值
  举例:select * from student where user_name=‘Tom’;//查询student表中的user_name为Tom的所有信息
  举例:select user_name from student order by length(user_name) asc;//查询student表中的user_name字段的值并按名字的长度排序

三、DML(Data Manipulation Language)

数据操纵语言:向表中添加、删除、修改数据操作,常用命令有insert、update和delete。
  举例:insert into student(id,user_name,password)values(1,‘Tom’,‘123456’);//向student表中插入一条数据
  举例:update student set user_name=‘Jack’,password=‘654321’ where id=1;//修改student表中id为1的学生的user_name和password
  举例:delete from student;//删除student表中的所有数据

四、DCL(Data Control Language)

数据控制语言:用来授予或收回访问数据库的某种特权、对数据库进行监视等操作,常用命令有GRANT(赋予用户某种控制权限)、REVOKE(取消用户某种控制权限)。

五、TCL(Transaction Control Language)

事务控制语言:控制数据操纵事务的发生时间及效果,常用命令有COMMIT(保存已完成事务动作结果)、SAVEPOINT(保存事务相关数据和状态用以可能的回滚操作)、ROLLBACK(恢复事务相关数据至上一次COMMIT操作之后)、SET TRANSACTION(设置事务选项)。

总结

DDL用于操作对象和对象的属性,DDL语言操作的对象是数据库中的对象而非对象所包含的数据,例如:表、视图等等;DML用于操作数据库对象中包含的数据,也就是说操作的单位是记录;DCL用来向用户赋予/取消对数据对象的控制权限;TCL用来对事务进行管理。

猜你喜欢

转载自blog.csdn.net/IT_Helianthus/article/details/89878597
今日推荐