错误:PostGIS 2.1中的类型“几何”不允许使用类型修饰符

时间:2016-01-30 01:05:10

标签: postgresql debian postgis postgresql-9.1

在Debian Wheezy上安装了postgresql 9.1并从标准的apt repo安装了postGIS 1.5。这没有几何类型,所以我添加了postgresql apt repo并安装了postgis 2.1:

sudo apt-get install postgis-2.1

与postgis相关的最后一个输出是:

Setting up postgresql-9.4-postgis-2.2 (2.2.1+dfsg-2.pgdg70+1)

一切都很好但是当我运行以下sql时出现与postGIS 1.5结果相同的错误:

ALTER TABLE bolls ADD COLUMN location geometry(POINT,-1);

编辑: 在Nick Barnes的评论中,我在下面的评论中尝试了ALTER EXTENSION postgis update to "2.1";并获得了

ERROR:  extension "postgis" does not exist

如果我尝试CREATE EXTENSION postgis,它会告诉我已经安装了PostGIS。

1 个答案:

答案 0 :(得分:1)

要从1.5版升级到2.1版,请按照hard upgrade instructions in the manual进行操作。简而言之,这些步骤是:

  1. 将旧数据库转储到文件
  2. 空间启用新的空数据库(您已使用CREATE EXTENSION postgis完成此操作)
  3. 使用新版PostGIS附带的特殊实用程序postgis_restore.pl将旧格式转换为新格式。
  4. 此外geometry(POINT,-1)无效。如果您没有SRID,那只是geometry(POINT)