【发布时间】:2017-05-06 05:22:47
【问题描述】:
我正在开发在 postgres 中保存数据的应用程序。所以我必须在使用应用程序之前准备数据库,必须创建几个表。我正在通过运行 sql 代码创建这些表,但我认为找到这个文档后不方便:
一个有用的 PostgreSQL 扩展通常包括多个 SQL 物体;例如,一个新的数据类型将需要新的函数,新的 运算符,可能还有新的索引运算符类。这有助于 将所有这些对象收集到一个包中以简化数据库 管理
使用扩展的主要优势,而不是仅仅运行 将一堆“松散”对象加载到数据库中的 SQL 脚本是 然后 PostgreSQL 将理解扩展的对象 一起去
我相信我必须使用这种方法
我不明白如何分享我的扩展程序。我认为它像 maven 一样工作,您可以使用自定义类型、函数、表创建扩展,然后您可以打包、命名它(例如 my-ext-0.1)、提供版本并发布到某种存储库中。之后,您可以连接到数据库,运行 sql 'create extension my-ext-0.1' 并完成所有操作 :)
我认为“创建扩展”命令将下载扩展并安装它,而无需手动下载。我使用 maven、ivy 并且我期望 postgresql 有类似的行为。
文档说您需要将扩展文件放在某个目录下,并且只在某个数据库下运行“创建扩展”。
您如何创建扩展程序并在不同服务器之间共享它们?
【问题讨论】:
标签: sql postgresql postgresql-extensions