数据库设计类型
数据库设计至少有四种类型:平面文件、层次型、网络型和关系型。关系数据库是GIS的标准设计。
图8.6
数据库设计的四种类型:(a)平面文件、(b)层次型、(c)网络型、(d)关系型。
关系数据库
■关系数据库是通过键彼此连接的表格的集合(关系)。
■一个主键代表一个或多个属性值,是表格中唯一识别的记录。
■外键是一个或多个属性, 是指另一个表中的主键。
规范化
关系型数据库必须遵循某些规则。规则之一称为规范化。规范化是一个分解的过程,即将一个包括所有属性的数据表格分解成小的表格,同时保持它们之间必要的联接。
图8.7
图示4块宗地,编码分别为P101、P102、P103和P104,其中两块(P101 和P104)为居住区,另两块为商业用地。
表8.1 未规范化表格
PIN | Owner | Owner address | Sale date | Acres | Zone code | Zoning |
P101 | Wang | 101 Oak St | 1-10-98 | 1 | 1 | residential |
Chang | 200 Maple St | |||||
P102 | Smith | 300 Spruce Rd | 10-6-68 | 3 | 2 | commercial |
Jones | 105 Ash St | |||||
P103 | Costello | 206 Elm St | 3-7-97 | 2.5 | 2 | commercial |
P104 | Smith | 300 Spruce Rd | 7-30-78 | 1 | 1 | residential |
表8.2 规范化的第一步
PIN | Owner | Owner address | Sale date | Acres | Zone code | Zoning |
P101 | Wang | 101 Oak St | 1-10-98 | 1.0 | 1 | residential |
P101 | Chang | 200 Maple St | 1-10-98 | 1.0 | 1 | residential |
P102 | Smith | 300 Spruce Rd | 10-6-68 | 3.0 | 2 | commercial |
P102 | Jones | 105 Ash St | 10-6-68 | 3.0 | 2 | commercial |
P103 | Costello | 206 Elm St | 3-7-97 | 2.5 | 2 | commercial |
P104 | Smith | 300 Spruce Rd | 7-30-78 | 1.0 | 1 | residential |
图8.8
来自规范化第二步的独立表格,与表格相关的关键字段突出显示。
图8.9
规范化后的独立表格。关联表格的关键字段突出显示。
关系类型
关系数据库的表格之间(cardinalities)(更精确的说是表格中的记录之间)通常包括四种关系类型:“一对一”、“一对多”、“多对一”和“多对多”。
图8.10
关系数据库表格之间的四种数据关系类型:一对一、一对多、多对一和多对多。
图8.11
由共同关键字提供右边的表格与左边的要素属性表的链接。
图8.12
SSURGO 数据库中“多对一”关系的例子:把在cotreestomng中的三种树种与在 component 的相同土壤组分关联起来。
图8.13
SSURGO 数据库中“一对多”关系的例子:把在 mapunit中的土壤的地图单元与在 component中的两种土壤组分关联起来。