小编Pau*_*ski的帖子

pg_get_serial_sequence 返回错误:关系“---”的列“---”不存在

使用 Postgres 11.5,我尝试手动将一些数据(具有特定键值)插入到具有 SERIAL PRIMARY KEY 字段的表中,然后调整 SERIAL 主键字段的顺序以返回高于当前最大值的值价值。但我收到错误。这是一个简单的表格

CREATE TABLE FOO (
  FOO_ID SERIAL PRIMARY KEY,
  VAL     INTEGER
);

INSERT INTO FOO (VAL) VALUES (4);
SELECT * FROM FOO;
-- returns one record with a FOO_ID of 1, as expected

INSERT INTO FOO (FOO_ID, VAL) VALUES (5, 5);
SELECT * FROM FOO WHERE VAL=5;
-- returns one record with a FOO_ID of 5, as expected
Run Code Online (Sandbox Code Playgroud)

接下来,我想更新序列,以便接下来的几次没有显式 FOO_ID 的插入不会与 ID 为 5 的插入发生冲突:

SELECT setval(pg_get_serial_sequence('FOO', 'FOO_ID'), (SELECT COALESCE(MAX(FOO_ID), 0) FROM …
Run Code Online (Sandbox Code Playgroud)

postgresql postgresql-11

3
推荐指数
1
解决办法
1858
查看次数

标签 统计

postgresql ×1

postgresql-11 ×1