SQL的功能包括哪四个部分?
SQL(Structured Query Language)是一种用于在关系型数据库中执行操作的语言。它由IBM的研究员Donald D. Chamberlin和Raymond F. Boyce在1970年创立。SQL包括四个部分:数据定义语言(DDL)、数据操作语言(DML)、数据控制语言(DCL)和事务控制语言(TCL)。
一、数据定义语言(DDL)
数据定义语言用于定义和管理数据库中的对象,如表、视图、索引和存储过程。DDL的主要命令有CREATE、ALTER和DROP。
1. CREATE
CREATE命令用于创建数据库和数据库对象,如表、视图、索引等。下面是创建表的示例:
CREATE TABLE employees (
employee_id INT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
email VARCHAR(100),
phone_number VARCHAR(20),
hire_date DATE,
job_id INT,
salary FLOAT
);
其中,上面代码创建了一个名为"employees"的表,包含8个列:employee_id、first_name、last_name、email、phone_number、hire_date、job_id和salary。
2. ALTER
ALTER命令用于更改已经存在的数据库对象结构,如表的列或索引。下面是添加新列的示例:
ALTER TABLE employees ADD COLUMN department_id INT;
该代码向employees表添加了名为"department_id"的新列。
3. DROP
DROP命令用于删除数据库对象,如表、视图、索引等。下面是删除表的示例:
DROP TABLE employees;
该代码删除了employees表及其所有相关的数据。
二、数据操作语言(DML)
数据操作语言用于在数据库中查询、插入、更新和删除数据。DML的主要命令有SELECT、INSERT、UPDATE和DELETE。
1. SELECT
SELECT命令用于从表中查询数据。下面是从employees表中查询员工姓名和薪资的示例:
SELECT first_name, last_name, salary FROM employees;
2. INSERT
INSERT命令用于向表中插入数据。下面是向employees表中插入新员工数据的示例:
INSERT INTO employees (employee_id, first_name, last_name, email, phone_number, hire_date, job_id, salary)
VALUES (10001, 'John', 'Doe', 'john.doe@example.com', '555-555-5555', '2021-01-01', 1, 50000);
3. UPDATE
UPDATE命令用于更新表中的数据。下面是将employees表中员工ID为10001的薪资更新为60000的示例:
UPDATE employees SET salary=60000 WHERE employee_id=10001;
4. DELETE
DELETE命令用于从表中删除数据。下面是删除employees表中员工ID为10001的示例:
DELETE FROM employees WHERE employee_id=10001;
三、数据控制语言(DCL)
数据控制语言用于对数据库中的用户和权限进行管理。DCL的主要命令有GRANT和REVOKE。
1. GRANT
GRANT命令用于授权用户执行特定操作的权限。下面是授权用户"john"对employees表进行SELECT操作的示例:
GRANT SELECT ON employees TO john;
2. REVOKE
REVOKE命令用于撤销用户的权限。下面是撤销用户"john"对employees表进行SELECT操作的示例:
REVOKE SELECT ON employees FROM john;
四、事务控制语言(TCL)
事务控制语言用于对数据库中的事务进行管理。TCL的主要命令有COMMIT、ROLLBACK和SAVEPOINT。
1. COMMIT
COMMIT命令用于提交当前事务,将所有的数据修改操作持久化到数据库中。
2. ROLLBACK
ROLLBACK命令用于撤销当前事务,并将所有的数据修改操作回滚到事务开始前的状态。
3. SAVEPOINT
SAVEPOINT命令用于在事务中设置保存点,以便在后续的回滚操作中可以回到这个保存点。
总结
SQL是关系型数据库管理系统中最常用的语言,包括了数据定义语言(DDL)、数据操作语言(DML)、数据控制语言(DCL)和事务控制语言(TCL)四个部分。DDL用于定义和管理数据库中的对象,DML用于在数据库中查询、插入、更新和删除数据,DCL用于对数据库中的用户和权限进行管理,TCL用于对数据库中的事务进行管理。以上是SQL四个部分的基本功能介绍,实际应用中需要根据具体情况灵活运用。