SQL概述
SQL结构化查询语言,是关系数据库的标准语言。
SQL是一个通用的、功能性极强的关系数据库语言。
SQL特点
综合统一、高度非过程化、面向集合的操作方式、一种语言提供多使用方式、简洁易学易用。
SQL操作
模式的定义与删除
例:定义一个模式“S-T"
CREATE SCHEMA "S-T" AUTHORIZATION Wang;
#为用户wang添加了一个模式“S-T”,如果没有指定模式名,模式名隐含为用户名
例:删除模式“S-T”
DROP SCHEMA "S-T" CASCADE;
#CASCADE为级联删除,删除模式并删除模式下所有数据库对象;RESTRICT为限制删除,当前模式定义了下属数据库对象则不能删除。
基本表的定义删除与修改
例:建立学生表,学号是主码,姓名唯一。
CREATE TABLE Student(
Sno CHAR(9) PRIMARY KEY,/*设置主码*/
Sname CHAR(20) UNIQUE,/*取唯一值*/
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20),
FOREIGN KEY(Sname) REFERENCES Course(Sname)/*Sname是外码,被参照表是Course*/
);
例:向Student表增加入学时间列,数据类型为日期型
ALTER TABLE Student ADD S_entrance DATE;/*增加列一律为空值*/
例:将年龄由字符型改为整数型
ALTER TABLE Student ALTER COLUMN Sage INT;
例:增加约束条件课程名必须取唯一值
ALTER TABLE Course ADD UNIQUE(Cname);
例:删除Student表
DROP TABLE Student CASCADE;/*CASCADE为级联,RESTRICT为限制*/
索引的建立与删除
例:SC表按学号(Sno)升序与课程(Cno)降序建立唯一索引SCno
CREATE UNIQUE INDEX SCno ON SC(Sno ASC,Cno DESC);/*没有ASC、DESC默认是ASC*/
例:删除SC表SCno索引
DROP INDEX SC.SCno;
DROP INDEX SCno ON SC;
数据库查询
SELECT FROM 太多了,以后再补