如何在 PostgreSQL 上重新启动所有序列

问题描述 投票:0回答:1

我目前正在尝试找出一种方法将我的所有序列(总共 40 个)重新启动为 2 个。但我对如何做到这一点没有任何线索。 我有这个命令将单个序列更改回 2,但我需要对每个序列执行它。我想要一个可以用来重新启动所有 40 个序列的命令。

ALTER SEQUENCE abastecimentos_controle_seq RESTART WITH 2;

我很高兴你们能为我提供任何帮助!

postgresql postgresql-9.5
1个回答
0
投票

使用

psql
连接到 PostgreSQL 并运行以下命令:

SELECT format(
          'ALTER SEQUENCE %s RESTART WITH 2;',
          oid::regclass
       )
FROM pg_class
WHERE relkind = 'S' \gexec

\gexec
将查询结果的每一行作为SQL语句执行。

© www.soinside.com 2019 - 2024. All rights reserved.