今天群里面讨论,DDL 还是 DML,我这种小白还是总结下他们的区别吧。

1. DDL – Data Definition Language

数据库定义语言:定义数据库的结构。

其主要命令有CREATE,ALTER,DROP等,下面用例子详解。该语言不需要commit,因此慎重。

CREATE – to create objects in the database   在数据库创建对象

例:CREATE DATABASE test; // 创建一个名为test的数据库

ALTER – alters the structure of the database   修改数据库结构

例:ALTER TABLE test ADD birthday date; // 修改test表,新增date类型的birthday列

DROP – delete objects from the database   从数据库中删除对象

例:DROP DATABASE test;// 删除test数据库

还有其他的:

TRUNCATE – 截断表内容(开发期,还是挺常用的)

COMMENT – 为数据字典添加备注

2. DML – Data Manipulation Language

数据库操作语言:SQL中处理数据库中的数据

其主要命令有SELECT,INSERT,UPDATE,DELETE等,这些例子大家常用就不一一介绍了。该语言需要commit。还有常用的 LOCK TABLE ,记得写过锁的博客 – 传送门

还有其他不熟悉的:

CALL – 调用一个PL/SQL或Java子程序
EXPLAIN PLAN – 解析分析数据访问路径

3. DCL – Data Control Language

数据库控制语言:授权,角色控制等

GRANT – 为用户赋予访问权限

REVOKE – 撤回授权权限

4. TCL – Transaction Control Language

事务控制语言

COMMIT – 保存已完成的工作

SAVEPOINT – 在事务中设置保存点,可以回滚到此处

ROLLBACK – 回滚

SET TRANSACTION – 改变事务选项

最新文章

  1. c/c++与函数有关的优化
  2. CTE递归查询
  3. 【转】你真的理解Python中MRO算法吗?
  4. Unity中的协程是什么?
  5. RabbitMQ系列二(构建消息队列)
  6. MyEclipse设置内存
  7. SVN “工作副本 “...” 已经锁定”的解决的方法
  8. POJ 1001 Exponentiation 无限大数的指数乘法 题解
  9. Linux入门之——安装虚拟机软件
  10. 添加链接服务器 SQL SERVER
  11. java中的Unicode中文转义
  12. 进程间通信——FIFO(多个客户进程,一个服务进程)
  13. JavaScript如何一次性展示几万条数据
  14. Servlet和JSP生命周期概述
  15. geotrellis使用(三十四)矢量瓦片技术研究——矢栅一体化
  16. 八张图学通JavaScript 转自52
  17. 微信小程序 下拉加载
  18. Python 正则表达式相关问题
  19. rabbitMQ的安装和创建用户
  20. 433 模块 ARDUINO测试

热门文章

  1. Easy UI 遮罩(MASK)
  2. Redhat6.x下如何制作虚拟机快照和镜像封装
  3. 标准库源码--wsgi服务器
  4. Linux文件管理系统
  5. stm32 dac 配置过程
  6. python saltstack
  7. (spring-第4回【IoC基础篇】)spring基于注解的配置
  8. HexDump.java解析
  9. Java Proxy
  10. simple grammer