- 数据定义语言(DDL, Data Definition Language):
- CREATE:这个命令用于创建数据库对象,如数据库、表、索引、视图等。例如,CREATE DATABASE myDatabase;用于创建一个名为myDatabase的数据库,而CREATE TABLE myTable (id INT PRIMARY KEY, name VARCHAR(50));用于创建一个名为myTable的表,包含id和name两个字段。
- ALTER:这个命令用于修改已存在的数据库对象的结构。例如,ALTER TABLE myTable ADD age INT;用于向myTable表中添加一个名为age的新列。
- DROP:这个命令用于删除数据库对象。例如,DROP DATABASE myDatabase;用于删除名为myDatabase的数据库,而DROP TABLE myTable;用于删除名为myTable的表。
- 数据操作语言(DML, Data Manipulation Language):
- INSERT:这个命令用于向表中插入新的数据记录。例如,INSERT INTO myTable (id, name) VALUES (1, 'John Doe');用于在myTable表中插入一条新记录,id为1,name为'John Doe'。
- UPDATE:这个命令用于修改表中已存在的数据记录。例如,UPDATE myTable SET name = 'Jane Doe' WHERE id = 1;用于将myTable表中id为1的记录的name字段更新为'Jane Doe'。
- DELETE:这个命令用于删除表中的数据记录。例如,DELETE FROM myTable WHERE id = 1;用于删除myTable表中id为1的记录。
- 数据查询语言(DQL, Data Query Language):
- SELECT:这个命令用于从数据库中检索数据。例如,SELECT * FROM myTable;用于从myTable表中选择所有列的所有记录。
- FROM:这个子句用于指定要查询的数据来源,即表或视图的名称。例如,在上述SELECT * FROM myTable;语句中,myTable是数据来源。
- WHERE:这个子句用于设置查询的筛选条件,只有满足条件的记录才会被返回。例如,SELECT * FROM myTable WHERE age > 18;用于从myTable表中选择年龄大于18的所有记录。
- 数据控制语言(DCL, Data Control Language):
- GRANT:这个命令用于授予用户对数据库对象的访问权限。例如,GRANT SELECT ON myTable TO 'user1';用于授予用户'user1'对myTable表的查询权限。
- REVOKE:这个命令用于撤销已经授予的权限。例如,REVOKE SELECT ON myTable FROM 'user1';用于撤销用户'user1'对myTable表的查询权限。
- BEGIN TRANSACTION、COMMIT 和 ROLLBACK:这些命令用于管理数据库事务,确保数据的一致性和完整性。在一个事务中,可以执行多个DML操作,然后通过COMMIT命令提交更改,或者通过ROLLBACK命令回滚更改以恢复到事务开始前的状态。
- JOIN:这个命令用于合并来自两个或更多表的数据行,基于它们之间的相关性。例如,SELECT * FROM table1 JOIN table2 ON table1.id = table2.table1_id;用于根据id字段将table1和table2表中的相关记录连接起来。
- GROUP BY 和 HAVING:这两个子句用于对结果集进行分组和聚合,并设置分组后的筛选条件。例如,SELECT COUNT(*) FROM myTable GROUP BY age HAVING COUNT(*) > 10;用于计算myTable表中每个年龄段的人数,并只显示人数大于10的年龄段。
- ORDER BY:这个子句用于对结果集进行排序。例如,SELECT * FROM myTable ORDER BY name DESC;用于按照name字段降序排列myTable表中的记录。
- INDEX:这个命令用于创建和管理索引,提高查询性能。例如,CREATE INDEX idx_name ON myTable (name);用于在myTable表的name字段上创建一个索引,以加速基于name字段的查询。
|