代码之家  ›  专栏  ›  技术社区  ›  MistyD Harish Kumar Kailas

如何确定数据库上是否启用了postgis?

  •  0
  • MistyD Harish Kumar Kailas  · 技术社区  · 5 年前

    我想知道是否有办法确定在数据库上启用了PostGis。

    我正在尝试用我的开发机器复制我的生产服务器,我不确定我的开发机器上的数据库是否启用了PostGIS或PostGIS_拓扑,或者两者都启用了。

    我试着四处寻找解决办法,但什么都想不出来。

    1 回复  |  直到 5 年前
        1
  •  7
  •   John Moutafis Milani Igor    5 年前

    假设您可以访问数据库(通过终端或pgadmin应用程序),请尝试以下操作:

    1. 连接到您的数据库
    2. SELECT PostGIS_version();
      SELECT PostGIS_full_version();
      

    如果没有发生错误,则为该数据库启用了PostGIS。


    参考资料:
        2
  •  2
  •   Alexandre    4 年前

    我只想补充一下 约翰·穆塔菲斯的 回应,因为此时我无法对答案发表评论。

    我的情况有点不同,因为我创造了 波斯特吉斯 模式名称 :

    CREATE EXTENSION postgis SCHEMA schema_name
    

    只是运行接受答案的查询给了我一个错误,说明 . 相反,我必须确保在函数调用之前添加架构名称,如下所示:

    SELECT schema_name.PostGIS_version();
    SELECT schema_name.PostGIS_full_version();
    

    这最终对我有用。