我正在使用PostgreSQL数据库,我使用QGIS作为前端。
我的一个表使用bigserial作为其主ID的数据类型,这是我的想法,我不必为此字段打扰。前200个左右的条目工作正常,但现在尝试保存新条目时出现以下错误:
> PostGIS error while adding features: ERROR: duplicate key value
> violates unique constraint "investigations_pkey" DETAIL: Key
> (id)=(230) already exists.
我的ID计数器现在已经达到280,但是我必须手动输入最后50个左右的ID。可能某些条目已被删除,现在bigserial的计数器被混淆了。有没有一种方法可以将计数器“重置”为某个数字?
我假设id是serial
列:您可以使用setval
函数将序列设置为某个值(documentation)
关于PostgreSQL serial
列的一个警告是,显式设置列的值没有向前移动相应的序列;这是最不匹配的原因。