DDL 全称
客户可以使用称为数据库管理系统 (DBMS) 的程序,从数据集存储、定向和检索信息。DBMS 语言和接口是 DBMS 的一个基本组成部分,它允许用户与数据库系统交互。
数据定义语言在 SQL 中称为 DDL。它是 SQL(结构化查询语言)的一部分,用于指定和控制数据库的结构。DDL 命令用于创建、修改和删除数据库对象,例如表、索引、视图和约束。
DDL 命令
有几个 DDL 命令,例如 -
CREATE - create 命令用于创建新的数据库对象,例如表、视图或索引。CREATE 命令的语法将根据正在创建的对象类型而变化。
示例
例如,以下 SQL 查询创建名为“employees”的数据库,其中包含“id”、“name”和“salary”列 -
CREATE TABLE employees ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, salary DECIMAL(10,2) );
输出
+----+--------+---------+ | id | name | salary | +----+--------+---------+
ALTER - ALTER 用于更改数据库对象的现有结构。可以使用 ALTER 命令创建、修改或删除列、约束或索引。
示例
例如,以下 SQL 查询将名为“department”的新字段添加到“employees”数据库 -
ALTER TABLE employees ADD department VARCHAR(50);
输出
+----+--------+--------+-------------+ | id | name | salary | department | +----+--------+--------+-------------+
DROP - DROP 用于删除现有的表、视图或其他数据库对象。DROP 命令会永久删除该对象及其所有相关数据。
示例
例如,以下 SQL 查询删除“employees”表 -
DROP TABLE employees;
输出
The "employees" table and all of its data would be permanently wiped following the execution of the "DROP TABLE employees" command, and there would be no input or output table to show.
TRUNCATE - TRUNCATE 可用于从现有表中删除所有数据。与 DROP 命令相反,TRUNCATE 命令本质上只是删除了数据集中的数据,而不是表本身。
示例
假设这是员工表 -
+----+--------+--------+-------------+ | id | name | salary | department | +----+--------+--------+-------------+ | 1 | Alice | 50000 | Engineering | | 2 | Bob | 60000 | Marketing | | 3 | Charlie| 75000 | Sales | | 4 | Dave | 65000 | Engineering | | 5 | Eve | 55000 | Marketing | +----+--------+--------+-------------+
例如,以下 SQL 语句截断“employees”表 -
TRUNCATE TABLE employees;
输出
Output Table: +----+------+-------+------------+ | id | name | salary| department | +----+------+-------+------------+ | | | | | +----+------+-------+------------+
TRUNCATE 命令完全删除了“employees”表中的数据,但表本身保持不变。运行该命令后,该表仍然存在,但其中不包含任何数据行。输出表显示了运行该命令后“employees”表的结构,但不包含任何数据。
RENAME - 此命令用于重命名现有数据库中的表或列。
示例
输入表
+----+--------+--------+-------------+ | id | name | salary | department | +----+--------+--------+-------------+ | 1 | Alice | 50000 | Engineering | | 2 | Bob | 60000 | Marketing | | 3 | Charlie| 75000 | Sales | | 4 | Dave | 65000 | Engineering | | 5 | Eve | 55000 | Marketing | +----+--------+--------+-------------+
例如,以下 SQL 查询将“employees”表重命名为“staff” -
RENAME TABLE employees TO staff;
输出
+----+--------+--------+-------------+ | id | name | salary | department | +----+--------+--------+-------------+ | 1 | Alice | 50000 | Engineering | | 2 | Bob | 60000 | Marketing | | 3 | Charlie| 75000 | Sales | | 4 | Dave | 65000 | Engineering | | 5 | Eve | 55000 | Marketing | +----+--------+--------+-------------+
CQL 命令“RENAME TABLE employees TO staff”仅将当前键空间中现有的“employees”表重命名为“staff”,因此输入和输出表没有变化。表的列和内容保持不变。
因此,输入和输出表的结构和数据相同。唯一的区别是表名,它已从“employees”更改为“staff”。
结论
DDL 语句负责管理数据库的结构。DBA 可以使用 DDL 命令创建、修改和删除数据库对象,例如表、视图和索引。此外,DDL 命令还用于实施数据完整性约束,如主键、唯一约束和外键。
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP