如何获取postgresql中唯一约束的名称?

发布于 2024-11-26 08:03:47 字数 69 浏览 2 评论 0原文

我需要从 postgresql 表中删除唯一约束,但我没有在架构中给它命名。有谁知道如何获取此类约束的名称,或者如何删除它?

I need to drop a unique constraint from a postgresql table, but I didn't give it a name in the schema. Does anybody know, how to get the name of such a constraint, or how to drop it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

情深已缘浅 2024-12-03 08:03:47

这类似于(对于单列约束):

tableName_columnName_key

要获取约束名称,请写入(在 psql 中):

\d tableName

或使用 pg_constraint 系统目录:

SELECT conname
FROM pg_constraint
WHERE conrelid =
    (SELECT oid 
    FROM pg_class
    WHERE relname LIKE 'tableName');

您也可以从对象树中的 pgAdmin 获取它。

That is something like (for single column constaint):

tableName_columnName_key

To get constaint name write (in psql):

\d tableName

or use pg_constraint system catalog:

SELECT conname
FROM pg_constraint
WHERE conrelid =
    (SELECT oid 
    FROM pg_class
    WHERE relname LIKE 'tableName');

Also you can get it from pgAdmin in objects tree.

滥情稳全场 2024-12-03 08:03:47
SELECT conname
FROM pg_constraint
WHERE conrelid = 'mytable'::regclass::oid
SELECT conname
FROM pg_constraint
WHERE conrelid = 'mytable'::regclass::oid
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文