矢量式地理信息系统的属性大多储存在关系数据库系统(relationaldatabase system)中。在关系数据库中,各数据表之间的关系称为「关联性」(Relationships)。
关系数据库系统最基本的观念便是表格(table)。一个表格式为储存数据最自然的方式,每一个表格包含了许多行(column)又称为字段(field),于每一行内存着相同性质的数据。 表格内每一列(row)里包含许多不同性质的数据项。每一列又称为一条记录 (record)。
关连的方式
关联有三种:一对一、一对多和多对一关联性。为了解释这些关系,我们需要定义来源表格(source table)(from)与目标表格(destination table)(to)。例如一个数据表格(A)加入到具有图征属性表格(B)中,数据表格(A)称为来源表格,图征属性表格(B)称为目标表格。这三种方式说明如下:
一对一:目标表格中,只有一笔记录与来源表格的其中一笔记录产生关连。 一对多:目标表格中的一笔记录与来源表格的多笔记录产生关连。
多对一:目标表格中两笔或两笔以上的记录与来源表格的一笔记录产生关连。
下图分别为:一对一、一对多、多对一
键值(Key)
对象彼此要产生关连是借着内部索引字段的属性来维护,而索引字段的属性值称为键值。它是由一个或多个字段所组成,可以在表格中区别出唯一记录。依照性质可以分为主键与外键,主键字段:通常是「标识符」字段。每一笔数据录均必须有不同的标识符;外键字段:表格之(外键)字段为另一表的主键字段。透过外键字段可以将各个表格关联起来,在表格中外键字段下的值可能非唯一,但其在所对应到的它表主键字段中,必须是唯一。
例如:表一土地编号为主键,表二的土地分类是主键,但对表一土地分类为外键。
JOIN 与 RELATE 功能
Join 和 Relate 是地理信息系统中常见的功能,透过结合(Join)功能,将不同表格透过一对一或多对一的关连方式结合起来。相关(Relate)则是将不同的表格以一对多的关连方式结合起来,产生实时关连,例如土地标号 1 的土地所有权人有二人,若使用 Join 只有一笔数据会加入原目的表格,另一笔数据则会遗失,故需要用 Relate 的功能。
Join:多对一
土地编号 | 土地位置 | 土地分类 |
---|---|---|
1 | 2.6 | C1 |
2 | 1.0 | C2 |
3 | 3 | C2 |
4 | 5 | C1 |
土地分类 | 名称 |
---|---|
C1 | 农地 |
C2 | 建地 |
土地编号 | 面积(ha) | 土地分类 | 名称 |
---|---|---|---|
1 | 2.6 | C1 | 农地 |
2 | 1.0 | C2 | 建地 |
3 | 3 | C2 | 建地 |
4 | 5 | C1 | 农地 |
Relate :一对多
土地编号 | 面积(ha) | 土地分类 |
---|---|---|
1 | 2.6 | C1 |
2 | 1.0 | C2 |
3 | 3 | C2 |
4 | 5 | C1 |
土地编号 | 拥有者 |
---|---|
1 | John |
1 | Tom |
2 | Mary |
3 | Ella |
3 | Mary |
4 | John |
土地编号 | 面积 | 土地分类 | 拥有者 |
---|---|---|---|
1 | 2.6 | C1 | John |
1 | 2.6 | C1 | Tom |
2 | 1.0 | C2 | Mary |
3 | 3 | C2 | Ella |
3 | 3 | C2 | Mary |
4 | 5 | C1 | John |
完整QGIS中文手册目录
QGIS中文手册的全部内容章节: QGIS简体中文操作手册