文档介绍:数据库系统概论
一、绪论
数据(Data)、数据库(Database)、数据库管理系统(DBMS)、数据库系统(DBS)
DBMS的主要功能
数据定义功能:提供数据定义语言(DDL, Data Definition Language系的属性名集合
(3) D
属性组U中属性所来自的域
(4) dom
属性向域的映象集合
(5) F
属性间的数据依赖关系集合
传统的集合运算
有关系R和S,它们具有相同的目n (即两个关系都有n个属性),并且相应的属性取自同 一个域。那么,
并:RUS,仍为n目关系,由属于R或属于S的元组组成,RUS = { tltURVt^S }
差:R - S,仍为n目关系,由属于R而不属于S的所有元组组成,R -S = { t|t^RAt S }
交:RHS仍为n目关系,由既属于R又属于S的元组组成,RHS = { t|tURAtuS }或R HS = R - (R-S)
广义笛卡尔积:有关系R为n目关系,有k1个元组,有关系S, m目关系,k2个元组。 那么
RXS:列:(n+m)列的元组的集合。每个元组的前n列是关系R的一个元组,后m列是
关系S的一个元组。行:k1Xk2个元组。RXS = {t t |t UR A t US }
r s r s
专门的关系运算
选择运算符的含义:在关系R中选择满足给定条件的诸元组,O F(R) = {t|tURAF(t)=' 真'}
投影运算符的含义:从R中选择出若干属性列组成新的关系,n A(R) = { t[A] | tUR }
连接运算从R和S的广义笛卡尔积RXS中选取(R关系)在A属性组上的值与(S关系) 在B属性组上值满足比较关系的元组。
等值连接的含义:从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,
即等值连接
自然连接是一种特殊的等值连接,两个关系中进行比较的分量必须是相同的属性组,在结 果中把重复的属性列去掉。
给定一个关系R(X,Z), X和Z为属性组。当t[X]=x时,x在R中的象集(Images Set) 为:Zx={t[Z]ltUR, t[X]=x},它表示R中属性组X上值为x的诸元组在Z上分量的集合。附:
学号
姓名
性别
年龄
所在
Sno
Sname
Ssex
Sage
系
95001
李勇
男
20
CS
95002
刘晨
女
19
IS
95003
王敏
女
18
MA
95004
张立
男
19
IS
有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。
表 student
表 course 表 sc
课程
课程名
先行课
学分
Cno
Cname
Cpno
Ccredi
1
数据库
5
4
2
数学
2
3
信息系统
1
4
4
操作系统
6
3
5
数据结构
7
4
6
数据处理
2
7
PASCAL语言
6
4
(7)举例
学
课程号
成绩
号
Sno
Cno
Grade
95001
1
92
95001
2
85
95001
3
88
95002
2
90
95002
3
80
[例1]查询信息系(IS系)全体学生
。Sdept = 'IS' (Student)或 ° 5 ='IS' (Student)
[例2]查询年龄小于20岁的学生
° Sage < 20(Student) 或 ° 4 < 20(Student)
[例3]查询学生的姓名和所在系
即求Student关系上学生姓名和所在系两个属性上的投影
n J (Student) 或 n (Student)
Sname,Sdept 2,5
[例4] n (SC)的、等价的SQL语句及计算结果
意义:查询至少选修1号课程和3号课程的学生号码
等价的 SQL 语句:select sno,cno from sc
[例5] n Sno (o Cno=,2,(SC))的意义、等价的SQL语句及计算结果 意义:查询选修了2号课程的学生的学号
等价的 SQL 语句:select sno form sc where cno= '2'
结果:{ 95001, 95002}
[例 6] n Sname(o _ (Course SC Student))
Cpno= 5 AV AV
意义:查询至少选修了一门其直接先行课为5号课程的课程的学生姓名。
A
B
C
a1
b1
5
a1
b2
6
a2
b3
8
a2
b4