SQL(结构化查询语言)是一种用于创建和管理关系数据库的编程语言。根据其功能和用途,SQL语言可以分为以下几种分类:
数据定义语言(DDL)
DDL语句用于定义数据库的结构,包括创建和修改表、索引和视图。DDL语句中最常见的命令包括CREATE、ALTER和DROP。例如:
sql
CREATE TABLE customers (
id INT NOT NULL,
name VARCHAR(255),
email VARCHAR(255),
PRIMARY KEY (id)
);
数据操纵语言(DML)
DML语句用于插入、更新和删除数据库中的数据。DML语句中最常见的命令包括INSERT、UPDATE和DELETE。例如:
sql
INSERT INTO customers (id, name, email)
VALUES (1, 'John Doe', 'john.doe@example.com');
UPDATE customers SET name = 'John Smith'
WHERE id = 1;
DELETE FROM customers WHERE id = 1;
数据查询语言(DQL)
DQL语句用于从数据库中检索数据。DQL语句中最常见的命令是SELECT。例如:
sql
SELECT * FROM customers;
SELECT name, email
FROM customers
WHERE id = 1;
数据控制语言(DCL)
DCL语句用于控制对数据库的访问权限,包括授予和撤销用户权限。DCL语句中最常见的命令包括GRANT和REVOKE。例如:
sql
GRANT SELECT ON customers TO user1;
REVOKE SELECT ON customers FROM user2;
事务控制语言(TCL)
TCL语句用于管理数据库事务,包括启动、提交和回滚事务。TCL语句中最常见的命令包括COMMIT、ROLLBACK和SAVEPOINT。例如:
sql
BEGIN TRANSACTION;
INSERT INTO customers (id, name, email)
VALUES (2, 'Jane Doe', 'jane.doe@example.com');
COMMIT;
SAVEPOINT my_savepoint;
ROLLBACK TO my_savepoint;