gpt4 book ai didi

mysql - Postgresql设置下一个要写入的ID

转载 作者:可可西里 更新时间:2023-11-01 07:02:17 25 4
gpt4 key购买 nike

我最近将一个数据库从 mysql 迁移到 pgsql 9。

但是现在当我尝试创建一个新对象时(在 django admin 中)它告诉我我正在尝试使用的 id(从一个开始并且每次尝试都会增加)已经被使用。

我猜有一个指针或索引需要设置为上次使用的 id。我说得对吗?

最佳答案

当你定义你的表时,PostgreSQL 等价于'auto_increment'是:

CREATE TABLE foo (
id SERIAL,
...
);

如果您的表已经创建(正如我怀疑的那样),您可以手动添加它:

CREATE SEQUENCE foo_id_seq;
ALTER TABLE foo ALTER COLUMN id SET DEFAULT nextval('foo_id_seq');

请注意,如果您想坚持使用 Pg 会给您的默认名称,请使用以下格式作为您的序列名称:

<table name>_<column name>_seq

因此在我的示例中,foo_id_seq

关于mysql - Postgresql设置下一个要写入的ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7993442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com