更改 Postgres 序列的最小值
我正在尝试更改现有序列的最小值。
首先,我尝试
ALTER SEQUENCE product_id_seq MINVALUE 10000;
并得到错误:START值(1)不能小于MINVALUE (10000)
。
所以我尝试
ALTER SEQUENCE product_id_seq MINVALUE 10000 RESTART WITH 10000;
但得到了同样的错误。
当然,我可以放弃它并创建一个新的,但我认为应该有一种方法可以做到这一点。我正在使用 Postgres 8.4.7。
I am trying to change minimum value of an existing sequence.
First I tried
ALTER SEQUENCE product_id_seq MINVALUE 10000;
and I got ERROR: START value (1) cannot be less than MINVALUE (10000)
.
So I tried
ALTER SEQUENCE product_id_seq MINVALUE 10000 RESTART WITH 10000;
but got the same error.
Of course I could just drop it and create a new one, but I think there should be a way to do this. I am using Postgres 8.4.7.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如何一次设置它们:
这应该改变最小值、起始值和当前值将所有值设置为 10000,从而使所有内容保持一致。
How about setting them all at once:
That should change the minimum, starting, and current values all to 10000 and thus make everything consistent.
PostgreSQL 有几个对序列进行操作的函数。除了此处的其他指南之外,您还可以使用
PostgreSQL has several functions that operate on sequences. In addition to the other guidance here, you could use
我做了以下测试,我的版本是9.0。
I Have done the following test, My version is 9.0.