gpt4 book ai didi

postgresql - 下降序列和级联

转载 作者:行者123 更新时间:2023-11-29 11:10:06 28 4
gpt4 key购买 nike

我想使用 CASCADE 在一个语句中删除表中使用的序列和表本身,但我收到通知并且表没有被删除。例如:

CREATE SEQUENCE seq1;
CREATE TABLE t1 (f1 INT NOT NULL DEFAULT nextval('seq1'));

然后当我这样做的时候:

DROP SEQUENCE seq1 CASCADE;

我收到以下消息,并且表没有被删除:

NOTICE:  drop cascades to default for table t1 column f1

我确实做错了什么,但这是我在 PostgreSQL 中的第一步。

最佳答案

该表从不是关联序列的依赖对象,并且从不被删除:

DROP SEQUENCE ... CASCADE;

只有 DEFAULT 列从序列“依赖”于序列,如果使用 CASCADE 删除序列,则设置为 NULL .

反之亦然:如果序列属于表列,则它会被删除:

DROP TABLE f1 CASCADE;

对于表列所拥有的序列,您可以使用 serial 类型,或 ALTER an existing sequence :

ALTER SEQUENCE seq1 OWNED BY t1.f1;

关于postgresql - 下降序列和级联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10001735/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com