postgresql Postgres重复键错误代码

lndjwyie  于 2023-11-18  发布在  PostgreSQL
关注(0)|答案(2)|浏览(160)

目前我使用postgresql作为我的数据库,我通过MS Excel CSV格式将所有数据导入表中。所有事情都顺利进行,但问题是每当我想插入额外的数据到表中时,例如使用以下代码:

insert into country (name)
values ('America');

字符串
它不断弹出一个错误,

ERROR:  duplicate key value violates unique constraint "effect_pkey"
DETAIL:  Key (country_id)=(1) already exists.
********** Error **********

ERROR: duplicate key value violates unique constraint "effect_pkey"
SQL state: 23505
Detail: Key (country_id)=(1) already exists.


当我一直试图插入数据,错误得到类似只是国家_id在错误消息是增加.然后我只能插入数据时,我超越了现有的ID在我的表.我想知道我如何才能解决这个问题.非常感谢.

798qvoo8

798qvoo81#

比如说:

SELECT setval('country_id_seq', (SELECT MAX(country_id) FROM country) );

字符串
(我不知道确切的名字,因为OP在他的问题中没有给予表的定义)

wswtfjt7

wswtfjt72#

现在更好的解决方案可能是使用GENERATED AS IDENTITY来允许PostgreSQL分配id,同时确保它不会被外部分配。
例如https://www.postgresqltutorial.com/postgresql-tutorial/postgresql-identity-column/

相关问题