空间数据库—关系数据库理论基础
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二 关系数据模型
20世纪80年代以来,关系型数据库理论日益成熟并得
到空前广泛的应用。关系数据模型成为主流数据模型
单一的数据结构----关系 现实世界的实体以及实体间的各种联系均用关系 来表示 数据的逻辑结构----二维表 从用户角度,关系模型中数据的逻辑结构是一张 二维表。
两个实体型间的联系
a∪b
combinition
Select实现集合运算(续)
使用exists和no exists实现intersection和
difference Select * from t1 Where exists (select * from t2)
a∩b
intersection
Select * from t1 Where not exists (select * from t2)
之后,提出了关系代数和关系演算的概念
1972年提出了关系的第一、第二、第三范式 1974年提出了关系的BC范式
一
典型实验系统
概述(续)
System R University INGRES
典型商用系统
ORACLE
SYBASE
INFORMIX
DB2
INGRES
实体型1
1 联系名 1 实体型2 1:1联系
实体型1
1 联系名 n 实体型2 1:n联系
实体型1
m
联系名
n 实体型2 m:n联系
Relational Model
No hierarchy of entities; records are
simply stored as a set of tuples
A tuple is a set of permanantly related fields. Also called a table, or file.
One-to-one or many-to-one relationships
are encoded
7
关系数据模型的特点
(1) 能够以简单、灵活的方式表达现实世界中 各种实体及其相互间关系。 (2)关系模型具有严密的数学基础和操作代数 基础—如关系代数、关系演算等。
A
a1 a1
A R a1 a1 a2
A a1 S a1 a2
B b1 b2 b2
B b2 b3 b2
C c1 c2 c1
R×S
B
b1 b1
C
c1 c1
A
a1 a1
B
b2 b3
C
c2 c2
a1
a1 a1
b1
b2 b2
c1
c2 c2
a2
a1 a1 a2 a1
b2
b2 b3 b2 b2
c1
c2 c2 c1 c2
第4章(2)
空间数据库 —关系数据库
北京建筑工程学院 王文宇
第二节
一.概述 二.关系模型 三.SQL语言
关系数据库
四.Arcview tables 五.应用实例(人事管理信息系统)
一
概述
系统而严格地提出关系模型的是美国IBM 公司的E.F.Codd
1970年提出关系数据模型 E.F.Codd, “A Relational Model of Data for Large Shared Data Banks”, 《Communication of the ACM》,1970
关系代数
传统的集合运算
并
差 交 广义笛卡尔积
专门的关系运算
选择 投影 连接
除
1. 并(Union)
R 和S
具有相同的目n(即两个关系都有n个属性) 相应的属性取自同一个域
R ∪S
仍为n目关系,由属于R或属于S的元组组成 R ∪S = { t | t R ∨t S }
WHERE
2、说明:
查询条件
①选择列表—可包括几个列名或表达式,用逗号隔开, 指示返回哪些数据。 ②表的列表—包括提供数据的表或视图的名称。 ③每一个SELECT子句必须有一个FROM 子句。
Select实现集合运算
使用union实现combinition
Select * from t1 Union Select * from t2
C c2 c2 c1
a1
a2 a2 a2
b2
b2 b2 b2
c2
c1 c1 c1
a1
a2
b3
b2
c2
c1
三 SQL语言
——结构化查询语言 是一种用于存取和查询数据,更新并 管理关系数据库系统的数据库查询和编程语 言。 Transact-SQL是增强的SQL。
SQL语言主要组成部分
数据定义语言— 定义和管理数据库
并(续)
R
A a1 a1 a2
B b1 b2 b2
C c1 c2 c1
R∪S
A a1 a1 a1 a2
B b1 b2 b3 b2
C c1 c2 c2 c1
S
A a1 a1 a2
B b2 b3 b2
C c2 c2 c1
2. 差(Difference)
R - S
仍为 n 目关系,由属于 R 而不属于 S 的所有元 组组成
包括CREATE、ALTER和DROP等语句
数据操作语言—查询添加修改和删除数据库中数据
包括SELECT、INSERT、UPDATE、DELETE等
数据控制语言—设置或者更改数据库权限
包括GRANT、DENY、REVOKE等语句
查询数据库(SELECT子句)
1、命令基本格式:
SELECT FROM 选择列表 表的列表
R ∩S = { t | t R ∧t S } R ∩ S = R –( R - S )
交 ( 续)Leabharlann Baidu
R
A a1 a1 a2
B b1 b2 b2
C c1 c2 c1
R∩S
A a1 a2
B b2 b2
C c2 c1
S
A a1 a1 a2
B b2 b3 b2
C c2 c2 c1
4. 广义笛卡尔积 (Extended Cartesian Product)
R
n目关系,k1个元组 S m目关系,k2个元组 R ×S 列:(n+m)列的元组的集合 元组的前n列是关系R的一个元组 后m列是关系S的一个元组 行:k1×k2个元组 R × S = { t r t s | t r R ∧ t s S }
广义笛卡尔积 (续)
R -S = { t|t R∧t S }
差(续)
R
A a1 a1 a2
B b1 b2 b2
C c1 c2 c1
R-S
A a1
B b1
C c1
S
A a1 a1 a2
B b2 b3 b2
C c2 c2 c1
3. 交(Intersection)
R ∩S
仍为n目关系,由既属于R又属于S的元组组成