SQL(Structured Query Language,结构化查询语言)是用于管理和操作关系数据库系统的标准编程语言。它允许用户执行数据的定义、查询、更新和管理等操作。以下是一些常见的SQL语句及其简要说明:
数据定义语言(DDL)
DDL语句用于定义和管理数据库中的数据结构或模式。
• CREATE:创建数据库对象(如表、索引、视图等)。
【sql】
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(100),
position VARCHAR(50),
salary DECIMAL(10, 2)
);
• ALTER:修改现有数据库对象的结构。
【sql】
ALTER TABLE employees ADD COLUMN department VARCHAR(50);
• DROP:删除数据库对象。
【sql】
DROP TABLE employees;
• TRUNCATE:清空表中的所有数据,但保留表结构。
【sql】
TRUNCATE TABLE employees;
数据操作语言(DML)
DML语句用于查询、插入、更新和删除数据库中的数据。
• SELECT:从数据库中检索数据。
【sql】
SELECT name, position FROM employees WHERE salary > 50000;
• INSERT:向数据库中插入新数据。
【sql】
INSERT INTO employees (id, name, position, salary) VALUES (1, 'John Doe', 'Manager', 60000);
• UPDATE:修改数据库中的现有数据。
【sql】
UPDATE employees SET salary = 65000 WHERE id = 1;
• DELETE:从数据库中删除数据。
【sql】
DELETE FROM employees WHERE id = 1;
数据查询语言(DQL,实际上是DML的一部分)
虽然DQL不是严格意义上的SQL分类,但通常将SELECT语句视为DQL,因为它专门用于数据查询。
数据控制语言(DCL)
DCL语句用于设置或更改数据库用户权限和安全级别。
• GRANT:授予用户访问权限。
【sql】
GRANT SELECT, INSERT ON employees TO some_user;
• REVOKE:收回用户访问权限。
【sql】
REVOKE INSERT ON employees FROM some_user;
事务控制语言(TCL)
TCL语句用于管理数据库事务,确保数据的一致性和完整性。
• START TRANSACTION或BEGIN:开始一个新的事务。
【sql】
BEGIN;
• COMMIT:提交事务,使所有更改永久生效。
【sql】
COMMIT;
• ROLLBACK:回滚事务,撤销自上次提交以来的所有更改。
【sql】
ROLLBACK;
• SAVEPOINT:设置事务中的保存点,以便可以回滚到该点。
【sql】
SAVEPOINT savepoint_name;
• SET TRANSACTION:设置事务的属性,如隔离级别。
【sql】
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
这些SQL语句是关系数据库管理系统(RDBMS)的基础,不同的RDBMS(如MySQL、PostgreSQL、Oracle、SQL Server等)可能在SQL标准的实现上有所不同,但大多数都支持上述基本的SQL语句集。