什么是ddl dml和dcl?怎样用才最好?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是ddl dml和dcl?怎样用才最好?相关的知识,希望对你有一定的参考价值。

DDL(data definition language)数据库定义语言:

其实就是我们在创建表的时候用到的一些sql,比如说:CREATE、ALTER、DROP等。DDL主要是用在定义或改变表的结构,数据类型,表之间的链接和约束等初始化工作上

CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)

ALTER TABLE table_name
ALTER COLUMN column_name datatype

DROP TABLE 表名称
DROP DATABASE 数据库名称

DML(data manipulation language)数据操纵语言:

就是我们最经常用到的 SELECT、UPDATE、INSERT、DELETE。 主要用来对数据库的数据进行一些操作。

SELECT 列名称 FROM 表名称
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
DELETE FROM 表名称 WHERE 列名称 = 值

DCL(Data Control Language)数据库控制语言:

是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。这个比较少用到。

参考技术A 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 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
北大青鸟恩颂学校为您解答。
希望能帮到你本回答被提问者和网友采纳

以上是关于什么是ddl dml和dcl?怎样用才最好?的主要内容,如果未能解决你的问题,请参考以下文章

术语 DDL、DML 和 DCL 的起源是啥?

什么是DDL,DCL,DML

MySQL的DDL/DML/DCL到底是什么?

什么是dql,dml,ddl,dcl?(数据库)

DDL,DML和DCL的区别与理解?

关于SQL中 DML,DDL,DCL定义