重置 Postgres'表顺序

发布于 2025-01-20 12:01:21 字数 762 浏览 2 评论 0原文

我的应用程序 dockets 中有一个表,我想为其重置序列/pk

我读到 sqlsequencereset 用于执行此操作,但是我该如何为单个表执行此操作表而不是我尝试过的整个应用程序

python manage.py sqlsequencereset dockets

它产生了以下内容:

BEGIN;
SELECT setval(pg_get_serial_sequence('"dockets_materialrequestflow"','id'), coalesce(max("id"), 1), max("id") IS NOT null) FROM "dockets_materialrequestflow";
SELECT setval(pg_get_serial_sequence('"dockets_materialrequest_flows"','id'), coalesce(max("id"), 1), max("id") IS NOT null) FROM "dockets_materialrequest_flows";
SELECT setval(pg_get_serial_sequence('"dockets_materialrequest"','id'), coalesce(max("id"), 1), max("id") IS NOT null) FROM "dockets_materialrequest";
COMMIT;

如何继续仅在此特定表中进行更改?

I have a table in my application dockets for which I want to reset the sequence/pk

I read that sqlsequencereset is used to do so but how do I do that for a single table and not the whole application

I tried:

python manage.py sqlsequencereset dockets

and it produced the following:

BEGIN;
SELECT setval(pg_get_serial_sequence('"dockets_materialrequestflow"','id'), coalesce(max("id"), 1), max("id") IS NOT null) FROM "dockets_materialrequestflow";
SELECT setval(pg_get_serial_sequence('"dockets_materialrequest_flows"','id'), coalesce(max("id"), 1), max("id") IS NOT null) FROM "dockets_materialrequest_flows";
SELECT setval(pg_get_serial_sequence('"dockets_materialrequest"','id'), coalesce(max("id"), 1), max("id") IS NOT null) FROM "dockets_materialrequest";
COMMIT;

How to proceed with only making changes in this particular table ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文