加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

尝试修改PostgreSQL中的约束

发布时间:2020-12-13 16:41:23 所属栏目:百科 来源:网络整理
导读:Postgres最近变得非常烦人。 我已经检查了Oracle提供的文档,并找到了一种方法,而不会丢弃表。问题是,它在修改时出错,因为它不能识别关键字。 使用EMS SQL Manager for PostgreSQL。 Alter table public.public_insurer_credit MODIFY CONSTRAINT public_
Postgres最近变得非常烦人。

我已经检查了Oracle提供的文档,并找到了一种方法,而不会丢弃表。问题是,它在修改时出错,因为它不能识别关键字。
使用EMS SQL Manager for PostgreSQL。

Alter table public.public_insurer_credit MODIFY CONSTRAINT public_insurer_credit_fk1
    deferrable,initially deferred;

我可以通过删除约束来解决它:

ALTER TABLE "public"."public_insurer_credit"
  DROP CONSTRAINT "public_insurer_credit_fk1" RESTRICT;

ALTER TABLE "public"."public_insurer_credit"
  ADD CONSTRAINT "public_insurer_credit_fk1" FOREIGN KEY ("branch_id","order_id","public_insurer_id")
    REFERENCES "public"."order_public_insurer"("branch_id","public_insurer_id")
    ON UPDATE CASCADE
    ON DELETE NO ACTION
    DEFERRABLE 
    INITIALLY DEFERRED;
根据正确的手册(由PostgreSQL提供,不是由Oracle提供),ALTER TABLE语句中没有可用的修改约束:

以下是正确手册的链接:

http://www.postgresql.org/docs/current/static/sql-altertable.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读