DQL、DML、DDL、DCL)简介

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

1. 数据查询语言DQL
数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE
子句组成的查询块:
SELECT <字段名表>
FROM <表或视图名>
WHERE <查询条件>

2 .数据操纵语言DML
数据操纵语言DML主要有三种形式:
1) 插入:INSERT
2) 更新:UPDATE
3) 删除:DELETE

3. 数据定义语言DDL
数据定义语言DDL用来创建数据库中的各种对象-----表、视图、
索引、同义词、聚簇等如:
CREATE TABLE/VIEW/INDEX/SYN/CLUSTER
| | | | |
表 视图 索引 同义词 簇

DDL操作是隐性提交的!不能rollback

4. 数据控制语言DCL
数据控制语言DCL用来授予或回收访问数据库的某种特权,并控制
数据库操纵事务发生的时间及效果,对数据库实行监视等。如:
1) GRANT:授权。


2) ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一点。
回滚---ROLLBACK
回滚命令使数据库状态回到上次最后提交的状态。其格式为:
SQL>ROLLBACK;


3) COMMIT [WORK]:提交。


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


(1) 显式提交
用COMMIT命令直接完成的提交为显式提交。其格式为:
SQL>COMMIT;


(2) 隐式提交
用SQL命令间接完成的提交为隐式提交。这些命令是:
ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,
EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。


(3) 自动提交
若把AUTOCOMMIT设置为ON,则在插入、修改、删除语句执行后,
系统将自动进行提交,这就是自动提交。其格式为:
SQL>SET AUTOCOMMIT ON;

总结

1.CREATE - to create objects in the database 创建
2.ALTER - alters the structure of the database 修改
3.DROP - delete objects from the database 删除
4.TRUNCATE - remove all records from a table, including all spaces allocated for the records are removed
TRUNCATE TABLE [Table Name]。
下面是对Truncate语句在MSSQLServer2000中用法和原理的说明:
Truncate table 表名 速度快,而且效率高,因为:
TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。
对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。
TRUNCATE TABLE 不能用于参与了索引视图的表。
5.COMMENT - add comments to the data dictionary 注释
6.GRANT - gives user's access privileges to database 授权
7.REVOKE - withdraw access privileges given with the GRANT command 收回已经授予的权限


开班计划
JAVA开班信息
  • JAVA零基础大数据连...06-06抢座中
  • JAVA零基础大数据连...06-25抢座中
  • JAVA零基础大数据连...07-09抢座中
  • JAVA零基础大数据连...07-25抢座中
前端开班信息
  • HTML5+PHP精品就业班05-08额满开班
  • HTML5+PHP精品就业班06-25抢座中
大数据开班信息
  • 大数据+云计算周末班03-10额满开班
  • 大数据+云计算高手...05-28抢座中
  • 零基础大数据实战班06-06抢座中
python人工智能开班信息
  • python全栈+人工智...07-09抢座中
  • python全栈+人工智...08-29抢座中
  • python全栈+人工智...09-10抢座中
全栈工程师开班信息
  • HTML5+PHP精品就业班11-26抢座中
  • HTML5+PHP全栈工程...12-24抢座中
  • HTML5+PHP精品就业班12-24抢座中
热门文章
  • 1上海尚学堂准备的100个Java毕业设计...
  • 2程序员面试如果回答不好这些问题,想...
  • 3Java面试题解析,Java面试必考知识点
  • 4数组Array和列表集合ArrayList、Link...
  • 520个高级Java开发面试题及答案,干货...
  • 6Java面试题详解第4批—Java编程代码...
  • 7java学习路线,需要学习哪些知识点?...
  • 8Java面试题及答案,Java划重点了!(...
学员感言
  • 看数学男如何从小白变高手

  • 史上励志的开班现场直播

  • 高薪是怎样炼成的?他们的成功你...

  • 大龄转行难?听听尚学堂老学员谈...


你可能感兴趣的:(DQL、DML、DDL、DCL)简介)