这是我的数据库表

CREATE TABLE cart (
  id           UUID      NOT NULL PRIMARY KEY,
  shop_user_id UUID UNIQUE
);

当我试图删除shop_user_id上的UNIQUE约束时,我得到了sql 42601 error

这是我用来删除唯一约束的查询

ALTER TABLE cart DROP UNIQUE shop_user_id;

推荐答案

要查找唯一约束的名称,请运行

SELECT conname
FROM pg_constraint
WHERE conrelid = 'cart'::regclass
  AND contype = 'u';

然后按如下方式删除约束:

ALTER TABLE cart DROP CONSTRAINT cart_shop_user_id_key;

cart_shop_user_id_key替换为从第一个查询中获得的任何内容.

Postgresql相关问答推荐

使用PGx在围棋中执行多条SQL语句

将列类型从文本[]更改为jsonb[]

Postgres查询按月和年分组的总计数

如何删除Devtainer之前创建的PostgreSQL数据库?

JOOQ:数据库版本早于 COCKROACHDB 支持的方言:13.0.0

需要用 jack/pgx 更新 golang 中复合类型的 PSQL 行

为什么我使用 VBA 只能从 postgres 获得 10 行?

无法从外部连接到在 AWS EC2 实例上运行的 Postgres

包含间隔在 jooq 和 postgres 中没有按预期工作

从网址获取第一个字符串

联合所有 postgresql Select 子句保留顺序

SQLAlchemy 中使用什么类型存储字节字符串?

PostgreSQL如何连接间隔值'2天'

如何在 postgres json 列中查询嵌套数组?

如何使用 postgresql 中的存储过程将数据插入表中

django.db.utils.IntegrityError:duplicate key value violates unique constraint "django_content_type_pkey"

在 Postgres 中显示关系、序列和函数的默认访问权限

使用 Homebrew 安装 icu4c 版本 63

PostgreSQL - 作为表名的动态值

如何在创建数据库时安装 Postgres 扩展?