我想更改我使用的序列的名称。我尝试了这两个选项但失败了:
ALTER TABLE PLAYER RENAME id_seq_player TO player_id_seq;
和
ALTER SEQUENCE id_seq_player RENAME TO player_id_seq;
我查看了官方文档并从那里创建了这两个 SQL,但它们都不起作用。 first solution导致 SQL 错误和 second有时间了。
这是我得到的 SQL 错误:
ERROR: column "id_seq_player" does not exist
********** Error **********
* 更新 *
似乎第二条 SQL 语句完成了这项工作。由于我必须转发端口,可能是连接或 OpenShift 的问题。但现在我重试了几次,验证有效。
ALTER SEQUENCE id_seq_player RENAME TO player_id_seq; /* Works */
最佳答案
ALTER SEQUENCE id_seq_player RENAME TO player_id_seq;
是正确的。您可能还想添加模式名称以确保您更改的是正确的模式名称,但这很可能会奏效。
如果它超时,您可能有另一个进程正在锁定您的序列。您是否有办法关闭所有其他数据库用户,或者这样做是否太重要了?
关于postgresql - 在 postgreSQL 中更改序列名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36361860/