暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PostgreSQL及PostGIS安装和空间数据库的创建

若海软件科技订阅号 2020-04-21
488

一、简介

       PostGIS是对象关系型数据库PostgreSQL的一个插件,PostGIS提供如下空间信息服务功能:空间对象、空间索引、空间操作函数和空间操作符。同时,PostGIS遵循OpenGIS的规范。

PostGIS支持所有的空间数据类型,这些类型包括:

点(POINT)
线(LINESTRING)
多边形(POLYGON)
多点 (MULTIPOINT)
多线(MULTILINESTRING)
多多边形(MULTIPOLYGON)
和集合对象集 (GEOMETRYCOLLECTION)等。
PostGIS支持所有的对象表达方法,比如WKT和WKB。

     PostGIS支持所有的数据存取和构造方法,如GeomFromText()、AsBinary(),以及GeometryN()等。

       PostGIS提供简单的空间分析函数(如Area和Length)同时也提供其他一些具有复杂分析功能的函数,比如Distance。

     PostGIS提供了对于元数据的支持,如GEOMETRY_COLUMNS和SPATIAL_REF_SYS,同时,PostGIS也提供了相应的支持函数,如AddGeometryColumn和DropGeometryColumn。

PostGIS提供了一系列的二元谓词(如Contains、Within、Overlaps和Touches)用于检测空间对象之间的空间关系,同时返回布尔值来表征对象之间符合这个关系。

      PostGIS提供了空间操作符(如Union和Difference)用于空间数据操作。比如,Union操作符融合多边形之间的边界。两个交迭的多边形通过Union运算就会形成一个新的多边形,这个新的多边形的边界为两个多边形中最大边界。


PostGIS还提供以下功能:

数据库坐标变换

数据库中的几何类型可以通过Transform函数从一种投影系变换到另一种投影系中。在OpenGIS中的几何类型都将SRID作为自身结构的一部分,但不知什么原因,在OpenGIS的SFSQL规范中,并没有引入Transform。

球体长度运算

存储在普通地理坐标系中的集合类型如果不进行坐标变换是无法进行程度运算的,OpenGIS所提供的坐标变换使得积累类型的程度计算变成可能。

三维的几何类型

SFSQL规范只是针对二维集合类型。OpenGIS提供了对三维集合类型的支持,具体是利用输入的集合类型维数来决定输出的表现方式。例如,即便 所有几何对象内部都以三维形式存储,纯粹的二维交叉点通常还是以二维的形式返回。此外,还提供几何对象在不同维度间转换的功能。

空间聚集函数

在数据库中,聚集函数是一个执行某一属性列所有数据操作的函数。比如Sum和Average,Sum是求某一关系属性列的数据总和,Average 则是求取某一关系属性列的数据平均值。与此对应,空间聚集函数也是执行相同的操作,不过操作的对象是空间数据。例如聚集函数Extent返回一系列要素中 的最大的包裹矩形框,如
SELECT EXTENT(GEOM) FROM ROADS
这条SQL语句的执行结果是返回ROADS这个数据表中所有的包裹矩形框。

栅格数据类型

PostGIS通过一种新的数据类型片,提供对于大的栅格数据对象的存储。片由以下几个部分组成:包裹矩形框、SRID、类型和一个字节序列。通过 将片的大小控制在数据库页值(32×32)以下,使得快速的随机访问变成可能。一般大的图片也是通过将其切成32×32像素的片然后再存储在数据库中的。

二、安装

1.PostgreSQL选择安装目录

2.设置密码,超级管理员 :poostgres

3.PostgreSQL安装完成

4.安装PostGIS

5.安装同时默认创建空间数据库

6.安装路径

7.设置PostGIS用户名密码,默认端口:5432

8.设置空间数据库名

9.安装完成


三、创建空间数据库

在正常创建数据库后,执行如下语句:

CREATE EXTENSION postgis;
CREATE EXTENSION postgis_topology;

至此,PostGresql和PostGIS安装完成,并成功创建了空间数据库。

文章转载自若海软件科技订阅号,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论