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...

面试题 相关文章推荐
Linux中如何设置Java环境变量(Ubuntu)
Jul 24 面试题
static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
Feb 22 面试题
什么是"引用"?申明和使用"引用"要注意哪些问题?
Mar 03 面试题
经典c++面试题六
Jan 18 面试题
杭州联环马网络笔试题面试题
Aug 04 面试题
OSPF有什么优点?为什么OSPF比RIP收敛快?
Feb 13 面试题
linux面试题参考答案(9)
Jan 07 面试题
Linux文件系统类型
Feb 15 面试题
Ajax和javascript的区别
Jul 20 面试题
Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
May 30 面试题
建龙钢铁面试总结
Apr 15 面试题
Ruby如何实现动态方法调用
Nov 18 面试题
索引覆盖(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
PHP获得用户使用的代理服务器ip即真实ip
2006/12/31 PHP
php单例模式实现(对象只被创建一次)
2012/12/05 PHP
php CI框架插入一条或多条sql记录示例
2014/07/29 PHP
Laravel登录失败次数限制的实现方法
2020/08/26 PHP
jquery实现带单选按钮的表格行选中时高亮显示
2013/08/01 Javascript
js之事件冒泡和事件捕获详细介绍
2013/10/28 Javascript
Javascript中typeof 用法小结
2015/05/12 Javascript
javascript性能优化之事件委托实例详解
2015/12/12 Javascript
JS制作图形验证码实现代码
2020/10/19 Javascript
前端自动化开发之Node.js的环境搭建教程
2017/04/01 Javascript
利用Vue.js实现求职在线之职位查询功能
2017/07/03 Javascript
jQuery实现简单的计时器功能实例分析
2017/08/29 jQuery
微信小程序使用Promise简化回调
2018/02/06 Javascript
小程序实现图片移动缩放效果
2020/05/26 Javascript
vue Treeselect 树形下拉框:获取选中节点的ids和lables操作
2020/08/15 Javascript
python绘图库Matplotlib的安装
2014/07/03 Python
Python简单调用MySQL存储过程并获得返回值的方法
2015/07/20 Python
python实现可视化动态CPU性能监控
2018/06/21 Python
Python 修改列表中的元素方法
2018/06/26 Python
Python实现基于PIL和tesseract的验证码识别功能示例
2018/07/11 Python
详解Python3注释知识点
2019/02/19 Python
通过字符串导入 Python 模块的方法详解
2019/10/27 Python
python使用配置文件过程详解
2019/12/28 Python
Python利用Faiss库实现ANN近邻搜索的方法详解
2020/08/03 Python
Python Celery异步任务队列使用方法解析
2020/08/10 Python
Pycharm添加虚拟解释器报错问题解决方案
2020/10/13 Python
P D PAOLA意大利官网:西班牙著名的珠宝首饰品牌
2019/09/24 全球购物
美国最大的烧烤架和户外生活用品专业零售商:Barbeques Galore
2021/01/09 全球购物
美国最大最全的亚洲购物网站:美国亚米网(Yamibuy)
2020/05/05 全球购物
搞笑老公保证书
2015/02/26 职场文书
小学英语教学随笔
2015/08/14 职场文书
电力安全学习心得体会
2016/01/18 职场文书
民事调解协议书
2016/03/21 职场文书
分析Netty直接内存原理及应用
2021/06/14 Java/Android
2022漫威和DC电影上映作品
2022/04/05 欧美动漫
SpringCloud Function SpEL注入漏洞分析及环境搭建
2022/04/08 Java/Android