整理第一章
1.DBMS功能 (1)数据定义功能 (2)数据组织、存储和管理 (3)数据操纵功能
(4)数据库的事务管理和运行管理 (5)数据库的建立和维护功能 (6)其它功能 2.数据库系统的特点
(1)数据结构化(与文件系统的本质区别) (2)数据的共享性高,冗余度低,易扩充 (3)数据独立性高
(4)数据由DBMS统一管理和控制 3.试述数据库系统的组成。
数据库系统一般由数据库,数据库管理系统(及其开发工具),应用系统,数据库管理员和用户构成。
3.两类数据模型 (1)概念模型
(2)逻辑模型(关系模型)和物理模型 4.数据模型的组成要素 (1)数据结构(静态特性)
1 / 22
(2)数据操作(动态特性) (3)完整性约束 5.E-R图
(1)实体:矩形 (2)属性:椭圆 (3)联系:菱形 6.关系模型
——关系的每一个分量必须是一个不可分的数据项,即不允许表中还有表关系(表)
元组(行) 属性(列) 7.数据库系统结构
(1)三级模式——外模式(用户)、模式(逻辑)、内模式(存储)(2)二级映像——外模式/模式映像(逻辑独立性)、模式/内模式映像(物理独立性)第三章
1.SQL特点 (1)综合统一 (2)高度非过程化
(3)面向集合的操作方式(非关系数据模型面向记录) (4)以同一种语法结构提供多种使用方式 (5)语言简洁,易学易用 定义功能:定义表、视图、xx。
2 / 22
分为:数据定义,数据查询,数据更新和数据控制4大部分。 2.定义模式
CREATE SCHEMA <模式名>AUTHORIZATION <用户名>[<表定义子句>|<视图定义子句>|<授权定义子句>]
3.删除模式
DROP SCHEMA <模式名>
(<列名> <数据类型>[ <列级完整性约束条件> ] [,<列名> <数据类型>[ <列级完整性约束条件>] ]… [,<表级完整性约束条件> ]); CREATE TABLE Student
(SnoCHAR(9) PRIMARY KEY,/*列级完整性约束条件*/ Sname CHAR(20) UNIQUE,/* Sname取唯一值*/ Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20) );
CREATE TABLE Course ( CnoCHAR(4) PRIMARY KEY, Cname CHAR(40),
3 / 22
Cpno CHAR(4), Ccredit SMALLINT,
FOREIGN KEY (Cpno) REFERENCES Course(Cno)
); Cpno是外码、被参照表是Course、被参照列是Cno CREATE TABLE SC (SnoCHAR(9), Cno CHAR(4), Grade SMALLINT, PRIMARY KEY (Sno,Cno),
/*主码由两个属性构成,必须作为表级完整性进行定义*/ FOREIGN KEY (Sno) REFERENCES Student(Sno),
/*表级完整性约束条件,Sno是外码,被参照表是Student */ FOREIGN KEY (Cno) REFERENCES Course(Cno)
/*表级完整性约束条件,Cno是外码,被参照表是Course*/ );
5.修改基本表 ALTER TABLE <表名>
[ ADD <新列名> <数据类型> [完整性约束] ] [ DROP <完整性约束名> ]
[ ALTER COLUMN<列名> <数据类型> ]; ALTER TABLE Student ALTER COLUMN Sage INT;
4 / 22
6.删除基本表(RESTRICT不能删除有视图) DROP TABLE <表名>[RESTRICT| CASCADE]; DROP TABLE Student CASCADE ; 7.建立xx
CREATE [UNIQUE] [CLUSTER] INDEX <索引名> ON <表名>(<列名>[<次序>][,<列名>[<次序>] ]…); CREATE CLUSTER INDEX Stusname ON Student(Sname); CREATE UNIQUE INDEX Stusno ON Student(Sno); CREATE UNIQUE INDEX Coucno ON Course(Cno); CREATE UNIQUE INDEX SCno ON SC(Sno ASC,Cno DESC); Student表按学号升序建唯一xx Course表按课程号升序建唯一xx SC表按学号升序和课程号降序建唯一xx 8.删除xx
DROP INDEX
SELECT [ALL|DISTINCT(去重)] <目标列表达式> [,<目标列表达式>]…FROM <表名或视图名>[,<表名或视图名> ]…
[ WHERE <条件表达式> ]
[ GROUP BY <列名1> [ HAVING <条件表达式> ] ] [ ORDER BY <列名2> [ ASC|DESC ] ];
5 / 22