一、SQL特点
1.高度非过程化
2.功能完备并且一体化
3.统一的语法结构
4.语言简洁,易学易用
数据查询:SELECT(查询)
数据定义:CREATE(创建),DROP(撤销)
数据操作:INSERT(插入),UPDATE(修改),DELETE(删除)
数据控制:GRANT(授权),REVOKE(授权)
二、SQL体系结构
三、基本表的定义
1、表结构的定义
- 创建基本表的语法结构:
CREATE TABLE <表名>
(<列名><数据类型>[列级完整性约束条件]
[,<列名><数据类型>[列级完整性约束条件]...]
[.<表级完整性约束条件>]);
eg:
CREAT TABLE 学生
( 学号 CHAR(8) NOT NULL UNIQUE, --不能取空值或者重复的值
姓名 CHAR(8),
性别 CHAR(2),
出生年份 DATETAME,
籍贯 CHAR(8),
学院 CHAR(15));
((1)--:表示单行注释(2)/*…*/:用于多行(块)注释)
- 声明主关键字
学号 CHAR(8) PRIMARY KEY,
或
CREAT TABLE 学生
( 学号 CHAR(8) NOT NULL UNIQUE,
姓名 CHAR(8),
性别 CHAR(2),
出生年份 DATETAME,
籍贯 CHAR(8),
学院 CHAR(15),
PRIMARY KEY (学号));
- 外部关键字
外部关键字:REFERENCES <表名><属性>
FOREING KEY (<属性1>) REFERENCES <表名><属性2>
- 缺省值
增加保留字DEFAULT为表中的取值定义一个默认值
性别 CHAR(2) DEFAULT '男';
年龄 SMALLINT DEFAULT 19;
四、修改和删除
- 修改基本表
ALTER TABLE <表名>
[ADD <新列名> <数据类型> [完整性约束条件]]
|[DROP <完整性约束名>]
COLUMN<列名>|
|[ALTER COLUMN<列名><数据类型>]
- <表名>指要修改的基本表
- ADD子句用于删除指定的列或完整性约束条件
- ALTER COLUMN子句用于修改原有的的列定义,包括修改列名和数据类型
1.在学生表中增加“年龄”属性,类型为SMALLINT
ALTER TABLE 学生 ADD 年龄 SMALLINT
2.在学生表中删除“年龄”属性
ALTER TABLE 学生 DROP COLUMN 年龄 ;
3.课程表中修改属性"课程名"的长度为10位
ALTER TABLE 课程 ALTER COLUMN 课程名 CHAR(10);
- 基本表的删除
DROP TABLE <表名> [RESTRICT|CASCADE];
--RESTRICT表示如果有视图或约束条件 涉及 要删除的表时,就禁止DBMS执行该命令
--CASCADE将该表与涉及的对象一起删除
DROP TABLE 这是表 CASCADE;
五、索引的建立与删除