暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

金仓数据库KingbaseES实现主键自增的方式

数据猿 2022-04-14
4226

关键字:kingbase,主键,触发器

本文一共介绍两种实现主键自增的方式,如下所示。

①使用数据库中自带的参数类型serial类型

1、创建ord表:

CREATE TABLE ord(

id SERIAL,

ord_no INT NOT NULL,

ord_name VARCHAR(32),

CONSTRAINT "ord_PKEY" PRIMARY KEY ("id")

);
复制

2、插入几条数据:

INSERT INTO "PUBLIC"."ord"

("id", "ord_no", "ord_name")

VALUES(NEXTVAL('ord_id_SEQ'::REGCLASS), 2, 'sfa');

INSERT INTO "PUBLIC"."ord"

("id", "ord_no", "ord_name")

VALUES(NEXTVAL('ord_id_SEQ'::REGCLASS), 3, 'aaa');
复制

3、查询ord结果集:

SELECT * FROM "ord";
复制

②使用序列+触发器

1、创建ord表

CREATE TABLE ord(

id SERIAL,

ord_no INT NOT NULL,

ord_name VARCHAR(32),

CONSTRAINT "ord_PKEY" PRIMARY KEY ("id")

);
复制

2、创建序列ord_seq

CREATE SEQUENCE ord_seq START WITH 1 INCREMENT BY 1;
复制

3、创建触发器

CREATE OR REPLACE TRIGGER add_ord_id

BEFORE INSERT

ON "ord"

FOR EACH ROW

AS

BEGIN

    SELECT ord_seq.nextval INTO NEW.id FROM dual;

END
复制
最后修改时间:2022-04-15 16:10:10
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论