当前位置:   article > 正文

postgresql 创建自增索引(序列)、以及索引(序列)相关操作_navicat pg 创建自定义索引

navicat pg 创建自定义索引
  • PostgreSQL 没有自增索引的概念,需要通过序列来完成相关操作
  • PostgreSQL 使用序列来标识字段的自增长,数据类型有 smallserial、serial 和 bigserial 。这些属性类似于 MySQL 数据库支持的 AUTO_INCREMENT 属性。
-- 存在以下序列先进行删除
-- 然后创建一个从 1 开始,步长为 1,最小值为 1 ,最大值为 9223372036854775807 的一个自增序列
DROP SEQUENCE IF EXISTS "public"."com_sys_log_seq";
CREATE SEQUENCE "public"."com_sys_log_seq"
INCREMENT 1
MINVALUE  1
MAXVALUE 9223372036854775807
START 1
CACHE 1;
-- 自增索引使用方式
-- 将以下函数填充到 ,使用Navicat 如图例1处位置
nextval('com_sys_log_seq'::regclass)

-- 使用建表语句
DROP TABLE IF EXISTS "public"."com_sys_log_seq";
CREATE TABLE "public"."com_sys_log_seq" (
  "id" int8 NOT NULL DEFAULT nextval('com_sys_log_seq'::regclass)
);
COMMENT ON COLUMN "public"."com_sys_log_seq"."id" IS '主键';
-- 把索引的记录值从 1 的位置重新开始
SELECT setval('"public"."com_sys_log_seq"', 1, true);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

在这里插入图片描述

  • mybatis-plus中获取新增的id
// javabean中
@TableId(type = IdType.AUTO)
private Integer id;
// service 中
int insert = xxxMapper.insert(pojo);
if (insert > 0) {
	System.out.println("pojo 插入后填充的id 为"+pojo.getId());
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • mybatis中获取自增id
    insert语句后调用current(“序列名”),即可获取;
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/691633
推荐阅读
相关标签
  

闽ICP备14008679号