ddl,dml和dcl的含义


Posted in 面试题 onMay 08, 2016
DDL :数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言
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 收回已经授予的权限

DML:数据操作语言,SQL中处理数据等操作统称为数据操纵语言
1.SELECT – retrieve data from the a database 查询数据
2.INSERT – insert data into a table 添加数据
3.UPDATE – updates existing data within a table 更新数据
4.DELETE – deletes all records from a table, the space for the records remain 删除
5.CALL – call a PL/SQL or Java subprogram
6.EXPLAIN PLAN – explain access path to data
Oracle RDBMS执行每一条SQL语句,都必须经过Oracle优化器的评估。所以,了解优化器是如何选择(搜索)路径以及索引是如何被使用的,对优化SQL语句有很大的帮助。Explain可以用来迅速方便地查出对于给定SQL语句中的查询数据是如何得到的即搜索路径(我们通常称为Access Path)。从而使我们选择最优的查询方式达到最大的优化效果。
7.LOCK TABLE – control concurrency 锁,用于控制并发

DCL:数据控制语言,用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等
COMMIT – save work done 提交
SAVEPOINT – identify a point in a transaction to which you can later roll back 保存点
ROLLBACK – restore database to original since the last COMMIT 回滚
SET TRANSACTION – Change transaction options like what rollback segment to use 设置当前事务的特性,它对后面的事务没有影响.

Tags in this post...

面试题 相关文章推荐
PHP如何删除一个Cookie值
Nov 15 面试题
如何处理简单的PHP错误
Oct 14 面试题
垃圾回收的优点和原理。并考虑2种回收机制
Oct 16 面试题
如何将整数int转换成字串String
Mar 21 面试题
JAVA的事件委托机制和垃圾回收机制
Sep 07 面试题
类成员函数的重载、覆盖和隐藏区别
Jan 27 面试题
ddl,dml和dcl的含义
May 08 面试题
深圳-东方伟业笔试部分
Feb 11 面试题
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
May 03 面试题
一套软件测试笔试题
Jul 25 面试题
What is EJB
Jul 22 面试题
什么是继承
Dec 07 面试题
索引覆盖(Index Covering)查询含义
Feb 18 #面试题
为什么group by 和order by会使查询变慢
May 16 #面试题
写出SQL四条最基本的数据操作语句(DML)
Dec 12 #面试题
介绍一下SQL注入攻击的种类和防范手段
Feb 18 #面试题
试解释COMMIT操作和ROLLBACK操作的语义
Jul 25 #面试题
怎么可以提高数据库查询数据的速度
Jun 28 #面试题
如何估计一张表的大小(假设该表中有1万条数据)
Mar 27 #面试题
You might like
新闻分类录入、显示系统
2006/10/09 PHP
火车采集器 免费版使出收费版本功能实现原理
2009/09/17 PHP
使用PHP生成PDF方法详解
2015/01/23 PHP
PHP生成制作验证码的简单实例
2016/06/12 PHP
javascript qq右下角滑出窗口 sheyMsg
2010/03/21 Javascript
jquery 查找新建元素代码
2010/07/06 Javascript
最短的javascript:地址栏载入脚本代码
2011/10/13 Javascript
Extjs407 getValue()和getRawValue()区别介绍
2013/05/21 Javascript
JavaScript实现网页对象拖放功能的方法
2015/04/15 Javascript
Clipboard.js 无需Flash的JavaScript复制粘贴库
2015/10/02 Javascript
学习JavaScript鼠标响应事件
2015/12/25 Javascript
jQuery div拖拽用法实例
2016/01/14 Javascript
Javascript实现苹果悬浮虚拟按钮
2016/04/10 Javascript
JavaScript函数柯里化原理与用法分析
2017/03/31 Javascript
Angular4自制一个市县二级联动组件示例
2017/11/21 Javascript
vue路由前进后退动画效果的实现代码
2018/12/10 Javascript
ES6 Class中实现私有属性的一些方法总结
2019/07/08 Javascript
vue项目打包之开发环境和部署环境的实现
2020/04/23 Javascript
JS加载解析Markdown文档过程详解
2020/05/19 Javascript
jQuery 淡入/淡出效果函数用法分析
2020/05/19 jQuery
[02:02]特效爆炸!DOTA2珍宝之瓶待你开启
2018/08/21 DOTA
Python实现的数据结构与算法之链表详解
2015/04/22 Python
对Pyhon实现静态变量全局变量的方法详解
2019/01/11 Python
Python八皇后问题解答过程详解
2019/07/29 Python
Python字节单位转换(将字节转换为K M G T)
2021/03/02 Python
西班牙自行车和跑步商店:Alltricks
2018/07/07 全球购物
美国按摩椅批发网站:Titan Chair
2018/12/27 全球购物
TALLY WEiJL法国网上商店:服装、时装及配饰
2019/08/31 全球购物
台湾全方位线上课程与职能学习平台:TibaMe
2019/12/04 全球购物
工商技校毕业生自荐信
2013/11/15 职场文书
有创意的广告词
2014/03/18 职场文书
优秀电子工程系毕业生求职信
2014/05/24 职场文书
预备党员转正考核材料
2014/06/03 职场文书
北京青年观后感
2015/06/15 职场文书
2016年母亲节寄语
2015/12/04 职场文书
CSS3点击按钮圆形进度打钩效果的实现代码
2021/03/30 HTML / CSS