空间数据库原理-3空间查询语言.ppt-2010-10-20
合集下载
第四章 空间查询语言

USA
NAM
270.0
8003.0
75.75
Polygonid-4
4.2关系代数 二、投影运算
投影运算π是把表所有行的某 些列提取出来。如下面的关系 代数是把表Country中所国家 的名字检索出来:
Name (Country)
Name
Canada Mexico Brazil Cuba USA Argentina
4.3SQL基础 一、DDL
表结构修改语句:ALTER TABLE
ALTER TABLE CITY DROP COLUMN Pop 删除表“City”中的列“Pop” ALTER TABLE CITY ADD Pop INT 在表“City”中的增加列“Pop”,为INT型。 ALTER TABLE CITY ALTER COLUMN Pop FLOAT 将表“City”中的列“Pop”类型改为FLOAT型。
4.1标准化查询语言
什么是查询语言? 查询语言是在查询中用来描述哪些数据是我们所感兴 趣的内容的一种语言形式 例子: 自然语言,如英语,几乎可以用来表达所有的查 询 计算机程序语言,如JAVA,可以用来表达计算 后的结果查询 结构化查询语言(SQL),可以用来表达常用数 据类型的查询,但不能表达嵌套查询 图形化查询,如Web查询、地图交互式查询等
SELECT * FROM CITY WHERE CAPITAL=‘Y‟
RXS R.Pop S.Pop
4.2关系代数 六、连接运算
4.应用条件,即关系S中的人口数不超过墨西哥的国家:
RXS
R.Pop
S.Pop
……
Mexico Mexico Mexico
……
第三章__空间查询语言

基本表的定义
示例 create table PROF ( PNO char[10], PNAME char(20) not null, SAL int, AGE int, DNO char[10], primary key (PNO), foreign key (DNO) references DEPT(DNO), check (SAL > 0))
格式 drop table 表名 示例 drop table DEPT 撤消基本表后,基本表的定义、表中数据、索 引、以及由此表导出的视图的定义都被删除。
查询示例关系
DEPT(D# , DNAME , DEAN) S(S# , SNAME , SEX , AGE , D#) COURSE(C# , CN , PC# , CREDIT) SC(S# , C# , SCORE) PROF(P# , PNAME, AGE, D# , SAL)
from PROF
where DNO = D01) where PNO = (select DEAN
from DEPT
where DNO = D01)
分组和聚集函数
分组命令 group by 列名 [having 条件表达式]
group by将表中的元组按指定列上的值相等的原则分组,然后在每 一分组上使用聚集函数,得到单一值。having则对分组进行选择, 只将聚集函数作用到满足条件的分组上。
命令
删除操作
delete from 表名 [where 条件表达式]
从表中删除符合条件的元组,如果没有where语句,则删除 所有元组。
示例
清除所有选课记录 delete from SC 删除王明老师所有的任课记录。 delete from PC where PNO in (select PNO from PROF where PNAME = “王明”)
空间数据库PPT课件

空间概念和数据模型
• 数据抽象和数据建模 • 空间信息模型
– 概念模型 – 基于场的模型 – 基于对象的模型
• 空间数据类型、空间对象关系 • 两种拓扑关系代数:9IM,RCC
2021
1
数据库设计的三个步骤
• 概念模型
– 按用户的观点从现实应用中抽象出事物以及 事物之间的联系
• 逻辑建模
– 建立概念和联系的逻辑结构
– 联系:表达实体间的关联
• 一对一、一对多、多对多
2021
7
E-R图
姓名 学号 系别 课程名 先修课 主讲老师
学生 选修
实体
联系 成绩
2021
课程
属性
8
面向对象模型
• 现实世界被看作若干对象类(class),由属性 (attribute)来描述性质,方法(method)来 描述行为,通过关系(relationship)互相关联
2021
37
度量空间
• 设X是一个非空集合,如果已知X中任何一对元 素x,y,均给定一个实数d(x,y)与之对应,而且 满足下列条件
– d(x,y)>=0(非负); – d(x,y)=0x=y(到自身距离为0); – d(x,y)=d(y,x)(对称); – d(x,y)<=d(x,z)+d(z,y)(三角不等式)
– 类:现实中具有相同性质的对象的封装
– 属性:描述对象的性质
– 方法:修改对象的状态,体现对象的功能
– 关系:类之间的关联
• 聚合aggregation:整体-部分关系 • 泛化generalization:一般-特殊关系 • 关联association:其它关系
2021
9
category name
• 数据抽象和数据建模 • 空间信息模型
– 概念模型 – 基于场的模型 – 基于对象的模型
• 空间数据类型、空间对象关系 • 两种拓扑关系代数:9IM,RCC
2021
1
数据库设计的三个步骤
• 概念模型
– 按用户的观点从现实应用中抽象出事物以及 事物之间的联系
• 逻辑建模
– 建立概念和联系的逻辑结构
– 联系:表达实体间的关联
• 一对一、一对多、多对多
2021
7
E-R图
姓名 学号 系别 课程名 先修课 主讲老师
学生 选修
实体
联系 成绩
2021
课程
属性
8
面向对象模型
• 现实世界被看作若干对象类(class),由属性 (attribute)来描述性质,方法(method)来 描述行为,通过关系(relationship)互相关联
2021
37
度量空间
• 设X是一个非空集合,如果已知X中任何一对元 素x,y,均给定一个实数d(x,y)与之对应,而且 满足下列条件
– d(x,y)>=0(非负); – d(x,y)=0x=y(到自身距离为0); – d(x,y)=d(y,x)(对称); – d(x,y)<=d(x,z)+d(z,y)(三角不等式)
– 类:现实中具有相同性质的对象的封装
– 属性:描述对象的性质
– 方法:修改对象的状态,体现对象的功能
– 关系:类之间的关联
• 聚合aggregation:整体-部分关系 • 泛化generalization:一般-特殊关系 • 关联association:其它关系
2021
9
category name
第3章 空间查询语言(上)

注意:本例中用到的Point(0, Ci.Shape.y)是与 city的经度相同的赤道上的点。
示例8
8)查询:按其邻国数目的多少列出所有国家。
SELECT FROM WHERE GROUP ORDER ,Count() Country Co,Country Co1 Touch(Co.Shape,Co1.Shape) BY BY Count()
连接运算示例
1) R Name , pop (Country) 2)S=R(S是R的一个副本) 3)得到笛卡儿积R×S。R×S关系的模式(schema)为:
R×S R.Pop S.Pop
4)应用条件,即关系S中人口数超过墨西哥的国家:
R1 = (='Mexico') (R) U R (S.Pop>R1 .Pop) S (S.Pop>R1 .Pop) (R1 S)
示例1
1)查询:列出Country表中所有与美国(USA)相邻的国 家名字。
SELECT AS “Neighbors of USA” FROM Country C1,Country C2 WHERE Touch(C1.Shape,C2.Shape)=1 AND = 'USA'
目录
3.4
扩展SQL以处理空间数据
虽然RA和SQL都是功能强大的查询处理语言,但它们还 是有不足之处。数据库厂商采取了两个对策: 采用blob来存储空间信息,这种解决方案既低效又缺 乏美感,数据必须依赖于宿主语言的应用程序代码; 建立一种混合系统,空间属性存储在一个单独的操作 系统文件中,这样就无法利用传统数据库服务。 面向对象系统对扩展DBMS的功能来支持空间(复杂) 对象,扩展了关系数据库的面向对象特性,最终产生 对象关系数据库管理系统(OR-DBMS)的通用框架。 OR-DBMS的关键特性是它支持SQL的最新版本; SQL3/SQL99,这一版本支持用户自定义类型。 采用更贴近人们对空间理解的概念,提供更高层次的 抽象。引入面向对象中用户自定义ADT的思想。
示例8
8)查询:按其邻国数目的多少列出所有国家。
SELECT FROM WHERE GROUP ORDER ,Count() Country Co,Country Co1 Touch(Co.Shape,Co1.Shape) BY BY Count()
连接运算示例
1) R Name , pop (Country) 2)S=R(S是R的一个副本) 3)得到笛卡儿积R×S。R×S关系的模式(schema)为:
R×S R.Pop S.Pop
4)应用条件,即关系S中人口数超过墨西哥的国家:
R1 = (='Mexico') (R) U R (S.Pop>R1 .Pop) S (S.Pop>R1 .Pop) (R1 S)
示例1
1)查询:列出Country表中所有与美国(USA)相邻的国 家名字。
SELECT AS “Neighbors of USA” FROM Country C1,Country C2 WHERE Touch(C1.Shape,C2.Shape)=1 AND = 'USA'
目录
3.4
扩展SQL以处理空间数据
虽然RA和SQL都是功能强大的查询处理语言,但它们还 是有不足之处。数据库厂商采取了两个对策: 采用blob来存储空间信息,这种解决方案既低效又缺 乏美感,数据必须依赖于宿主语言的应用程序代码; 建立一种混合系统,空间属性存储在一个单独的操作 系统文件中,这样就无法利用传统数据库服务。 面向对象系统对扩展DBMS的功能来支持空间(复杂) 对象,扩展了关系数据库的面向对象特性,最终产生 对象关系数据库管理系统(OR-DBMS)的通用框架。 OR-DBMS的关键特性是它支持SQL的最新版本; SQL3/SQL99,这一版本支持用户自定义类型。 采用更贴近人们对空间理解的概念,提供更高层次的 抽象。引入面向对象中用户自定义ADT的思想。
第六讲 空间数据索引技术与空间查询语言(2)ppt课件

④ 查询:圣劳伦斯河能为方圆300公里以内的城市供 水,列出能从该河获得供水的城市。
⑤查询:求出河流在流经的各国境内的长度 ⑥查询:按其邻国数目的多少列出所有国家。
四、空间查询处理
过滤筛选步骤(Filter): 细化步骤(Refine): 用一个不精确的大致范围来进行查询,产生
一个满足条件的较小候选集合。对候选集合 中的对象进行精确的筛选,产生最终的查询 结果。
点四叉树的每个结点存储了一个空间点的信 息及孩子结点的指针。
(0,100) D (30,90)
B (10,75)
(100,100) N WN E
A
SWSE
F(80,70)
F BC E
A (45,45)
C (25,15) E(70,20)
D
(0,0)
(100,0)
(a)平面图
(b)结构图
图5-22 一颗二维的点四叉树结构
本讲重点内容
➢ 空间索引的定义 ➢ 各种空间索引方法 ➢ 主要的空间操作算子 ➢ 空间查询的处理步骤
此课件下载可自行编辑修改,此课件供参考! 部分内容来源于网络,如有侵权请与我联系删除!感谢你的观看!
Disjoint(anotherGeometry ) Intersects(anotherGeometry ) Touches(anotherGeometry ) 空间 Crosses(anotherGeometry) 关系 Within(anotherGeometry) 运算
Contains(anotherGeometry)
PR四叉树叶子结点可能不在树的同一层次;叶子结 点的黑结点或空结点分别表示数据空间某一位置空 间点的存在与否。
H
G
B F I
⑤查询:求出河流在流经的各国境内的长度 ⑥查询:按其邻国数目的多少列出所有国家。
四、空间查询处理
过滤筛选步骤(Filter): 细化步骤(Refine): 用一个不精确的大致范围来进行查询,产生
一个满足条件的较小候选集合。对候选集合 中的对象进行精确的筛选,产生最终的查询 结果。
点四叉树的每个结点存储了一个空间点的信 息及孩子结点的指针。
(0,100) D (30,90)
B (10,75)
(100,100) N WN E
A
SWSE
F(80,70)
F BC E
A (45,45)
C (25,15) E(70,20)
D
(0,0)
(100,0)
(a)平面图
(b)结构图
图5-22 一颗二维的点四叉树结构
本讲重点内容
➢ 空间索引的定义 ➢ 各种空间索引方法 ➢ 主要的空间操作算子 ➢ 空间查询的处理步骤
此课件下载可自行编辑修改,此课件供参考! 部分内容来源于网络,如有侵权请与我联系删除!感谢你的观看!
Disjoint(anotherGeometry ) Intersects(anotherGeometry ) Touches(anotherGeometry ) 空间 Crosses(anotherGeometry) 关系 Within(anotherGeometry) 运算
Contains(anotherGeometry)
PR四叉树叶子结点可能不在树的同一层次;叶子结 点的黑结点或空结点分别表示数据空间某一位置空 间点的存在与否。
H
G
B F I
《空间数据库》PPT课件

学号 课程号 系名 002312 系名 A01 教师数
课程号 课程名 周学时 学分 系名 教师数 学生数 A01系名 GIS 教师数 4 学生数 5 研究生
网络数据库模型的优、缺点
优点:
能明确而方便地表示数据间的复杂关系。 数据加了用户查询和定位的困难。 需要存储数据间联系的指针,使得数据量增大。 数据的修改不方便(指针必须修改)。
关系数据库模型
关系数据库模型是以记录组或数据表的形式组织数据,以便于利
地图
M
Ⅰ
Ⅱ
2 a 1 d
b Ⅰ c 4
3
e Ⅱ g
5 f 6
M
Ⅰ 多边形 Ⅱ a c b e c f d g
点 1 x1 x2 x3 x4 x5 x6 y1 y2 y3 y4 t5 y6
Ⅰ 线 Ⅰ Ⅰ Ⅰ Ⅱ Ⅱ Ⅱ
a b c d e f g
层次数据库模型
它的特点是将数据组 织成一对多关系的结 构。 层次结构采用关键字 来访问其中每一层次 的每一部分。 层次数据库结构特别 适用于文献目录、土 壤分类、部门机构等 分级数据的组织。
2 a 1 d
b Ⅰ c 4
3
e Ⅱ g
5 f 6
M
M
Ⅰ
Ⅱ
a 1 2 2
b 3 3
c 4 4
d 1 3
非结构化特征:在当前通用的关系数据库管理系统中,数据记录 分类编码特征:一般而言,每一个空间对象都有一个分类编码, 海量数据特征:空间数据库的数据量比一般的通用数据库要大得 应用面广的特征:GIS数据应用于地理研究、环境保护、土地利
标准DBMS存储空间数据的局限性
空间数据库导论讲稿ppt课件

第二阶段:符号模型 :以数值方程为根底,在空间参照系统中用数学方 法表示空间实体的位置和关系,用平面符号化地图对现实世界作全面地描画, 准确数值表示的纸质地图成为地理空间的笼统/符号/概括模型。
第三阶段:空间数据模型 :从信息科学角度来认识、解释与分析客观世 界 ,空间数据模型是地理空间中空间实体集合的质量、数量、时间、空间特 性的全面笼统和概括,是地理空间特征与构造的数字表现方式。
笼统
空间属性 主题属性 时态属性
地理实体〔普通概念〕 或
实体对象〔面向对象〕
现实世界
概念世界
空间要素是独一命名的、可以相互区分的、具有完好地理含义的 笼统信息概念,它用“空间实体〞这个笼统概念,以数字方式来组织和 存储“空间景象〞的信息构造,以“符号地图〞对所表达的内容进展可 视化展现。
空间要素
空间景象--------表达内容 空间实体--------数字方式 地图符号--------展现方式
3、运用目的的复杂性:运用的广泛性欲不同的运用需求。 4、不断的开展变化:实际、技术、运用途于不断开展过程中。
Back
空间数据库与地理信息系统
1、空间数据库 2、数据库与空间数据库 3、空间数据库与地理信息系统 4、GIS与空间数据库的开展过程
Back
空间数据库〔内容〕
1、地图数据库:包括线划地图数据库、数字高程模型数据库、数字栅格地 图数据库、数字正射影像数据库和地名数据库。
具有地理分类编码,同类空间要素具有一样的主题属性构造。
8、可视性:以笼统化的图形符号模型来展现。
9、空间计算:维护、管理、处置、查询、分析和可视化需求空间计算。
10、多源性:多种来源的空间数据存在语义、内容、定位基准、比例尺、
空间查询和空间分析PPT课件

每一个单元,计算与其相邻的8个 单元的之间的坡度、坡向
坡度:高程差/d(单元的大小) 坡向:每一个单元,通过与相邻8
个单元的关系,计算平均方向或最 大的方向。
ArcGIS采用8单元计算法。
e1 e2 e3 e4 C e5 e6 e7 e8
S dx2 dy2
Ady /dx
2021/1/14
d y [e 6 ( 2 e 7 e 8 ) ( e 1 2 e 2 e 3 )/8 ] g
林业、生态领域。得到的栅格以日照强度分类(0-255)。
2021/1/14
.
13
等值线生成
2021/1/14
.
14
填挖方计算
计算两个栅格之间的填挖方,得到一个结果栅格 ArcView / ArcGIS有CutFill功能,简单计算填挖方,也可用栅格相减得到
详细的结果。
2021/1/14
.
15
ArcGIS利 用 ArcCatalog 建立拓扑 结构
2021/1/14
网络分析
A 1D C3
11
I
9
H
12
K
E
4 7
10
.
结点号 线段号
A
1
B
2
B 2G
C D E
3 1, 3, 4, 1, 1 4, 5, 7
F
F
2, 5, 6, 8
5
6
G
6
H
9
I
9, 10, 11, 12
K
12
8
L
13
J
13
L
2021/1/14
.
8
数字高程模型与地形分析
(digital elevation model)DEM 数字高程模型是给两维的点、线、面,赋予高程属性,使
坡度:高程差/d(单元的大小) 坡向:每一个单元,通过与相邻8
个单元的关系,计算平均方向或最 大的方向。
ArcGIS采用8单元计算法。
e1 e2 e3 e4 C e5 e6 e7 e8
S dx2 dy2
Ady /dx
2021/1/14
d y [e 6 ( 2 e 7 e 8 ) ( e 1 2 e 2 e 3 )/8 ] g
林业、生态领域。得到的栅格以日照强度分类(0-255)。
2021/1/14
.
13
等值线生成
2021/1/14
.
14
填挖方计算
计算两个栅格之间的填挖方,得到一个结果栅格 ArcView / ArcGIS有CutFill功能,简单计算填挖方,也可用栅格相减得到
详细的结果。
2021/1/14
.
15
ArcGIS利 用 ArcCatalog 建立拓扑 结构
2021/1/14
网络分析
A 1D C3
11
I
9
H
12
K
E
4 7
10
.
结点号 线段号
A
1
B
2
B 2G
C D E
3 1, 3, 4, 1, 1 4, 5, 7
F
F
2, 5, 6, 8
5
6
G
6
H
9
I
9, 10, 11, 12
K
12
8
L
13
J
13
L
2021/1/14
.
8
数字高程模型与地形分析
(digital elevation model)DEM 数字高程模型是给两维的点、线、面,赋予高程属性,使
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
创建表命令:CREATE TABLE
3.2 关系代数
——与关系模型相关联的形式化查询语言 代数组成
运算对象集合Ωa 运算集合Ωo
关系代数组成
1种运算对象——关系(表) 6种运算——选择,投影,并,笛卡儿积,差,交
3.2.1 选择和投影运算
——操纵单个关系中的数据 选择运算 定义 ——检索关系表中行的子集 语法形式 σ<选择运算符>(关系) 例:“列出Country表中所有位于北美洲(NAM)的国家” σCont = NAM(Country)
Cont Pop(millions) GDP(billions) Life-Exp Shape
Name
Canada
Mexico Cuba USA
NAM
NAM NAM NAM
30.1
107.5 11.7 270.0
658.0
694.3 16.9 8003.0
77.08
69.36 75.95 75.75
2种查询语言
关系代数——形式化的语言 结构化查询语言(SQL)
例子:World数据库
3个实体组成
Country(Name: varchar(35), Cont: varchar(35), Pop: integer,
GDP: integer, Life-Exp: integer, Shape: char(13))
S.D D1 D2 D1 D2
3.2.3 连接运算
选择、投影运算——从单个关系中提取信息 连接运算——从多个关系中提取信息 ——在笛卡儿积的基础上进行选择运算 条件连接
R cS = σc ( R×S) c——条件,通常由R和S的属性表示的条件表达式
自然连接 ——条件连接的特例 ——条件连接中的条件为2个关系中公共属性的相等性,结 果只一列表示公共的等值连接属性。
Shape: char(13))
World数据库的ER图
实体Country具有6个属性 实体City具有5个属性
实体River具有4个属性
World数据库中的3张表
Country表
Name Canada Mexico Brazil Cuba USA Argentina
Cont NAM NAM SAM NAM NAM SAM
3.3.1 DDL(数据定义语言) ——表的添加、删除、修改 一、定义基本表 CREATE TABLE <表名> (<列名> <数据类型>[ <列级完整性约束条件> ] [,<列名> <数据类型>[ <列级完整性约束条件>] ] … [,<表级完整性约束条件> ] ); 如果完整性约束条件涉及到该表的多个属性列, 则必须定义在表级上,否则既可以定义在列级 也可以定义在表级。
PolygonID-1
PolygonID-2 PolygonID-4 PolygonID-5
投影运算 定义 ——检索关系表中列的子集 语法形式 π<属性列表>(关系) 例:“检索Country表中所有国家的名字” πName(Country)
Name
Canada Mexico Brazil Cuba USA Argentina
Cuba
USA Mexico Canada Brazil Argentina Canada Mexico Argentina
2.1
3.2 2.0 3.4 1.5 1.1 0.8 14.1 10.75
Y
Y N N Y N Y Y Y
PointID-1
PointID-2 PointD-3 PointID-4 PointID-5 PointID-6 PointID-7 PointID-8 PointID-9
例子:A={1,2},B={a,b},
笛卡儿积(Cross-Product) ——R×S返回一个关系,其模式由R的全部属性加上S的全部 属性组成。
R.A
R.B
S.C × C1 C2
S.D D1 D2
A1
A2
B1
B2
R.A A1 A1 A2 A2
R.B B1 B1 B2 B2
S.C C1 C2 C1 C2
2600
1200 3000 6000
LineStringID-1
LineStringID-2 LineStringID-3 LineStringID-4
指向Country表的主码
几何形状 RDBMS中,指向线串形状表的主码 OR-DBMS中,线串ADT
命名空间 ——解决表间重名属性问题。 表名.属性名 如: Country.pop
指向Country表的主码
几何形状 RDBMS中,指向点形状表的主码 OR-DBMS中,点ADT
River表
Name Origion Length(kilometers) Shape
Rio Parana
St. Lawrence Rio Grande Mississippi
Brizal
USA USA USA
选择运算与投影运算结合 例:“检索Country表中所有位于北 美洲(NAM)的国家的名字”
πName (σCont = NAM(Country))
Name
Canada
Mexico Cuba USA
3.2.2 集合运算
R和S为2个关系: 集合并(Union) ——R∪S返回R或S中所有的元组。 集合差(Defference) ——R-S返回所有包含在R中,而不包含在S中的元组。 集合交(Intersection) ——对于2个运算相容的关系R和S,R∩S返回既在R中又在 S中的元组。
2个关系列数相同,从左到右顺序一致,共享同样的域
集合的笛卡儿积
对任意集合A,A2,…,An,A1×A2称作集合A1,A2的 笛卡儿积,定义如下:
A1×A2 = {<u,v> | u∈A1,v∈A2} A1×A2×… ×An =(A1×A2×… ×An-1) ×An 则A×B等于{<1,a>, <1,b>, <2,a>, <2,b>} B×A等于{<a,1>, <a,2>, <b,1>, <b,2>} A×=×A= 一般来说:A×B≠B×A,A×(B×C) ≠(A×B)×C
SQL:数据定义语言DDL
数据定义的对象
关系数据库的基本对象是基本表(table) 并可以在基本表上定义视图(view)作为数据 外模式 定义索引(index)用于向系统提示多种存取路 径,由系统自动选择,以加快查找速度。 (用户自定义数据类型)
SQL:数据定义语言DDL
操作方式
[例] 建立“学生”表Student,学号是主码,姓名取 值唯一。
CREATE TABLE Student (Sno CHAR(9) PRIMARY KEY, /* 列级完整性约束条件*/ Sname CHAR(20) UNIQUE, /* Sname取唯一值*/ Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20) );
SQL概述-特点
两种使用方式,统一的语法结构
SQL既是自含式语言(用户使用),又是嵌入式语言( 程序员使用) SQL语言完成数据定义、操纵、控制和查询的核心功能 只用了9个动词
语言简洁,易学易用
CREATE, DROP, ALTER, SELECT, INSERT, UPDATE, DELETE, GRANT, REVOKE
City(Name: varchar(35), Country: varchar(35), Pop: integer,
Capital: char(1), Shape: char(9))
River(Name: varchar(35), Origin: varchar(35), Length: integer,
[例] 建立一个“课程”表Course
CREATE TABLE Course ( Cno CHAR(4) PRIMARY KEY, Cname CHAR(40), 先修课程 Cpno CHAR(4) , Ccredit SMALLINT, FOREIGN KEY (Cpno) REFERENCES Course(Cno) );
而在非关系型的数据库系统中,必须在数据库的装入 和使用前全部完成数据库的定义。若要修改已投入运 行的数据库,则需停下一切数据库活动,把数据库卸 出,修改数据库定义并重新编译,再按修改过的数据 库结构重新装入数据
数据库定义随时修改
不必一开始就完全合理
可进行增加索引、撤消索引的实验,检验其对查 询效率的影响
操作对象
创建 基本表Table 视图View 索引Index CREATE TABLE CREATE VIEW 删除 DROP TABLE DROP VIEW 修改 ALTER TABLE
CREATE INDEX
DROP INDEX
SQL:数据定义语言DDL
SQL中,任何时候都可以执行一个数据定义语句 ,随时修改数据库结构。
几何形状 RDBMS中,指向Shape表的主码 OR-DBMS中,多边形ADT
City表
Name Country Pop(millions) Capital Shape