gpt4 book ai didi

postgresql - 无法从临时表中删除?

转载 作者:行者123 更新时间:2023-11-29 14:32:40 25 4
gpt4 key购买 nike

我一直遇到无法从临时表中删除数据的问题。但是,当我搜索错误消息时,我似乎无法在 Google 上找到相关的匹配项。我试图设置 REPLICA IDENTITY DEFAULT 和 NOTHING

CREATE TEMP TABLE name (LIKE schema.original);

ERROR: cannot delete from table "name" because it does not have a replica identity and publishes deletes Hint: To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE.

我正在尝试遵循一个 ETL 示例,因此我的查询看起来与在此链接上找到的查询非常相似(表名和列不同):

https://github.com/gtoonstra/etl-with-airflow/blob/master/examples/etl-example/sql/process_customer_dimension.sql

我的搜索不断显示逻辑复制的匹配项,但当我检查我的设置时,我发现它在副本下。

name,setting
wal_level,replica

最佳答案

您可以尝试将身份设置为完成,将使用整行作为标识符 ALTER TABLE name REPLICA IDENTITY FULL;

或者如果它有唯一索引ALTER TABLE name REPLICA IDENTITY USING INDEX index_name;

它将默认使用主键,我想没有。

附带说明一下,您为什么要发布临时表?我认为您应该删除它,因为我认为复制 temp 表没有意义。找到你的酒吧名称 SELECT * FROM pg_publication; 并从中删除临时表:ALTER PUBLICATION name DROP TABLE [ONLY] table_name [*] [, ...]

关于postgresql - 无法从临时表中删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49257365/

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