在向表中插入新行时,如何调用postgresql序列?

我想这样做:

insert into biz_term(
  biz_term_id, 
  biz_term_name, 
  ) 
values(SELECT nextval(idsequence)',
'temp'
);

我之所以想这样做,是因为当我试图将新记录插入biz_term表时,序列idsequence不会被直接调用.如何调用它?

推荐答案

你几乎做到了.您不需要在其中 Select :

insert into biz_term(
  biz_term_id, 
  biz_term_name, 
) 
values(
 nextval('idsequence'),
 'temp'
);

您有没有理由不将biz_term_id指定为serial(或bigserial),以便自动为您处理?

Postgresql相关问答推荐

PostgreSQL权限如何工作?需要从表格中 Select 收件箱

利用PostgreSQL查询中表的顺序来计算包含每次时间的时间范围

PostgreSQL\d命令:有办法只 Select 一列吗?

如何删除Devtainer之前创建的PostgreSQL数据库?

在 Postgres 中,部分索引比普通索引需要更多的时间和成本来执行

无法将 json 范围读取为 pgtype.Int4range

PostgreSQL 中的 Datum 数据类型是什么以及它的用途是什么?

Postgres 查询计划器不会使用更便宜的复合索引

pgadmin db 限制服务器属性不起作用

用于生产的 Rails 性能调优?

在 Ubuntu 11.04 服务器中启用对 postgresql 的 PHP 支持

在执行 postgresql 函数时提交事务

保存 geodjango PointField 时出错

Postgres 图像未创建数据库

如果 PostgreSQL 数据库中存在,则删除表

如何启动 Postgres 服务器?

在 postgresql 中将 bool 转换为 int

防止 CHARACTER VARYING 字段中出现空字符串

将 csv 文件中存在的 NULL 值复制到 postgres

如何将 Heroku PG 转储导入本地机器