Postgis - 从1.5迁移到2.3 - 解决方法

时间:2016-12-06 13:14:06

标签: geometry postgis

研究员,

我已经很难尝试从postgis 1.5迁移到2.3。实际上我对所有版本的postgis做了很多尝试:2.0,2.1,2.2和现在2.3。

因为我花了几个星期的时间,并且随着我准备放弃,我继续使用旧版本的postgresql和postgis,我希望我的问题在某个地方找到回音......

我只想迁移一个表字段,一个几何字段。所以在尝试这样做之前,我想听听你是否有任何经验:

想法是从旧的postgis(postgresql 9.2,postgis 1.5)中选择字段,并将表更新为新的postgis(postgresql 9.6,postgis 2.3)。

任何人都可以说出来吗?

EDIT ---

我刚刚尝试导入我需要的表,但是我收到了一个错误: 违反约束“enforce_srid_the_geom”。

:(

非常感谢。

1 个答案:

答案 0 :(得分:0)

如果您只需要迁移一个包含几何列的表,并且您遇到了此处所述过程的麻烦http://www.postgis.org/docs/postgis_installation.html#hard_upgrade 我建议一个解决方法:在旧数据库中创建一个文本字段,例如wkt_geom,然后执行

update tablename set wkt_geom = st_astext(the_geom)

现在删除几何列,导出旧数据库并导入到新数据库中。然后,创建几何列和

update tablename set the_geom = st_geomfromtext(wkt_geom, SRID_HERE)