本文档主要介绍了SQL(Structured Query Language,结构化查询语言)中的经典基本语句,涵盖了三个主要类别:DDL(数据定义语言)、DML(数据操纵语言)和DCL(数据控制语言)。SQL在数据库管理中起着至关重要的作用。
1. 数据定义语言(DDL):
- **创建数据库**:使用`CREATE DATABASE`命令为应用程序或项目创建一个新的存储空间,如`CREATEDATABASE database-name`。
- **删除数据库**:`DROP DATABASE`用于卸载并永久删除数据库,如`dropdatabase dbname`。
- **备份SQL Server**:在Mssql中,通过`sp_addumpdevice`函数创建备份设备,然后执行`BACKUP DATABASE`命令进行备份,例如指定设备名和备份路径。
2. 数据操纵语言(DML):
- **创建新表**:`CREATE TABLE`用于设计和定义数据结构,包括列名、数据类型等,如`createtable tabname(col1 type1, col2 type2)`。还有两种方式可以创建新表:A)基于现有表复制,B)使用SELECT语句定义。
- **删除表**:`DROP TABLE`用于移除已不再需要的表,如`droptable tabname`。
- **增加列**:`ALTER TABLE`用于在表结构中添加新的列,但在DB2中,列的增加意味着数据类型不能改变。
- **主键管理**:`ALTER TABLE`可用于添加或删除主键,如`ALTER TABLE tabname ADD PRIMARY KEY (col)` 和 `ALTER TABLE tabname DROP PRIMARY KEY (col)`。
- **创建索引**:通过`CREATE [UNIQUE] INDEX idxname ON tablename (col...)`来提升查询性能,索引一旦创建则无法修改,需先删除再重建。
- **创建视图**:`CREATE VIEW viewname AS SELECT statement`用于定义虚拟表,可以根据需要展示数据的不同视角。
3. 数据控制语言(DCL):
- **权限管理**:涉及GRANT和REVOKE语句,用于控制用户对数据库对象(如表、存储过程)的访问权限。
- **事务控制**:COMMIT和ROLLBACK用于提交或回滚数据库操作,确保数据一致性。
这些基本的SQL语句是数据库管理员和开发人员日常工作中不可或缺的一部分,它们用于数据的创建、修改、查询和保护。理解并熟练运用这些语句是实现高效数据库管理的关键。在实际应用中,需要根据具体的数据库管理系统(如MySQL、Oracle、SQL Server等)的语法差异进行适当的调整。