PostgreSQL 临时表是否已经注销?

zin*_*ngi 15 database postgresql optimization

我正在处理数据库操作,该操作会产生大量插入(~ 15,000,000)。

我目前对这个数据使用了一个临时表,因为操作后不再需要这些数据。我最近发现,未记录的表具有更好的插入性能,因此我想使用它。但是阅读文档,我不清楚临时表是否已经取消记录?如果不是,有没有办法让它们不被记录?

如果我尝试像这样更改临时表:

alter table temp_table set unlogged;
Run Code Online (Sandbox Code Playgroud)

我收到错误: [42P16] ERROR: cannot change logged status of table "test" because it is temporary

Lau*_*lbe 22

临时表永远不会被 WAL 记录。

由于它们将随数据库会话一起消失,因此永远不需要恢复它们。

  • 我正在执行“创建临时未记录表”并收到错误消息“语法错误位于或接近“未记录””。这救了我的命。 (2认同)