我当前的编程项目让我使用psycopg2库访问python3中的PostgreSQL数据库。尽管一切进展顺利,但我发现开源PostgreSQL和EnterprisingB版本(也称为Postgres Plus Advanced Server或PPA(之间存在细微的差异。因此,我需要能够确定数据库连接是与PPAS实例或常规的PostgreSQL实例。
。是否有一种方法可以通过Psycopg2 API或查询数据库来执行此操作?
我怀疑使用SELECT version()
可能会有一种方法,但是我不确定我可能会看到哪些可能的值表示我在哪个平台。
假设PPA是PostgreSQL的PPA是 superset (?(,您可以发出查询,调用仅在PPA中存在的函数或系统表。
- 如果成功的话,它是PPA。
- 如果失败,则不是PPA,应该是postgresql。或者您不幸的是其他错误。