SQL语言特点
1. SQL基本功能
- 数据定义功能:DDL(Data Definition Language)语言来实现,可用来支持定义或建立数据库对象(如表、索引、序列、视图等),定义关系数据库的模式、外模式、内模式。(CREATE ,ALTER,DROP命令)
- 数据操纵功能:DML(Data Manipulation Language)语言来实现,DML包括数据查询和数据更新两种。
- 数据控制功能:DCL(Data Control language):数据控制功能,指数据的安全性和完整性。
2. 特点
- 语言简洁 、易学易用
- 高度非过程化
- SQL语言既可交互使用,也可嵌入形式使用(前者是直接对DBMS发出SQL命令,后者主要嵌入(c,c++)等宿主语言中,被程序员用来开发数据库应用程序)
- 面向集合的操作方式:不仅查找结果可以是元组的集合,而且一次插入,删除,更新操作的对象也可以是元组的集合
- SQL语言支持关系数据库三级模式结构
- 内模式对应于存储文件,模式对应于基本表,外模式对应于视图
3. SQL语言分类简介
SQL功能 | 所使用的动词 |
---|---|
数据定义 | CREATE,DROP,ALTER |
数据查询 | SELECT |
数据操纵 | INSERT,UPDATE,DELETE |
数据控制 | GRANT,REVOKE |
数据定义语言
动词 | 功能 |
---|---|
CREATE | CREATE DATABASE, CREATE TABLE, CREATE VIEW, CREATE INDEX |
DROP | DROP DATABASE,DROP TABLE,DROP VIEW,DROP INDEX |
ALTER | ALTER TABLE |
4. 索引的定义与维护功能
建立索引的原则
- 索引的建立与维护由DBA和DBMS完成。
- 大表应当建索引,小表不必建索引,一个基本表,不宜建较多的索引
- 根据查询要求建立索引。对于一些查询频度较高,实时性要求高的数据一定要建立索引
建立索引
例如:
create unique index Susno ON Student(Sno);
create unique index Coucno ON Course(Cno);
create unique index Scno ON SC(Sno ASC,Cno DESC)
一般情况下自动为主键列建立索引,且建立索引为聚簇索引
删除索引
DROP INDEX SCno