0

我正在尝试生成UUID. PostgreSQL 8.2从文档中我发现uuid-ossp模块可以生成UUID,但它只支持PostgreSQL 9+. 有什么方法可以在这个uuid-ossp模块中使用PostgreSQL 8.2或使用查询生成?UUIDPostgreSQL 8.2

4

2 回答 2

3

您可能对 Postgres 插件的打包感到困惑。Postgres 9.1 引入了一种新的打包方案,称为Extension. 这个想法是插件的创建者在打包方面做更多的工作,因此插件的用户可能在安装方面做更少的工作。Create Extension命令(在我看来是一个错误的名称)将一个插件安装到您的 Postgres 集群中。

在 Postgres 9.1 之前,您可以安装 UUID 插件,但这样做并不那么简单。您必须找到适合您的 Postgres 版本的“uuid-ossp”插件。该插件很可能已与您的 Postgres 集群捆绑在一起,但尚未安装(激活)。在该插件包中找到用于安装的 SQL 脚本。然后在 Postgres 集群中执行该脚本。

有关详细信息,请参阅我在 Postgres 邮件列表中发布的帖子和我关于旧方式安装新方式安装 UUID 插件的博客帖子。

我找不到 8.2 文档,但确实找到了插件的 8.3 文档。uuid-ossp我不知道 8.2 是否有 uuid-ossp 插件的版本,但我想是的。


Postgres 8.2的生命周期结束两年(2011-12)。我强烈建议计划升级。

正如 Craig Ringer 评论的那样,您应该只对 Postgres 8.2 集群进行最基本的维护。询问 UUID 支持表明了一些重大变化。对于此类更改,您确实应该首先完成对更新的 Postgres 的升级。

于 2013-11-13T09:11:15.053 回答
1

您可以编写一个函数 PL/Perl 或 PL/Python,使用它们的模块之一生成 UUID。

于 2013-11-14T22:46:46.000 回答