麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

QGIS中文操作手册(1-10)GIS与关系数据库

矢量式地理信息系统的属性大多储存在关系数据库系统(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简体中文操作手册

相关阅读

麻辣GIS-OpenGISer

作者:

开源GIS的践行者。

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

手机阅读
公众号关注
知识星球
手机阅读
麻辣GIS微信公众号关注
最新GIS干货
关注麻辣GIS知识星球
私享圈子

仅有一条评论

  1. 麻辣GIS-moshi_09
    1#
    moshi_09  · 2018-12-22 11:58

    每一个表格包含了许多行(column)又称为字段(field);每一列又称为一条记录 (record)。
    这句话有错误? 应该是列(column)又称为字段(field),每一行称为一条记录(record),还是因为台湾与我们使用的叫法是相反的呢?

留言板(小编看到第一时间回复)