新增 支持达梦数据库
新增 Sequences 增加 updateTime 新增 增加查询序号是否锁定的方法 locked 新增 增加将序号设为未使用的方法 unused 新增 增加 SequencesUnlock find(SequencesUnlock sequencesUnlock) 和 SequencesUnused find(SequencesUnused sequencesUnused)
This commit is contained in:
26
src/main/resources/dm/create_table_sequences.sql
Normal file
26
src/main/resources/dm/create_table_sequences.sql
Normal file
@@ -0,0 +1,26 @@
|
||||
CREATE TABLE IF NOT EXISTS "sequences"
|
||||
(
|
||||
"key" VARCHAR(64) NOT NULL,
|
||||
"type" VARCHAR(64) NOT NULL,
|
||||
"seq" BIGINT NOT NULL,
|
||||
"update_time" TIMESTAMP,
|
||||
PRIMARY KEY ("key", "type")
|
||||
);
|
||||
COMMENT ON TABLE "sequences" IS '当前序号表';
|
||||
COMMENT ON COLUMN "sequences"."key" IS '序号英文名称';
|
||||
COMMENT ON COLUMN "sequences"."type" IS '序号类型';
|
||||
COMMENT ON COLUMN "sequences"."seq" IS '已使用到的序号';
|
||||
COMMENT ON COLUMN "sequences"."update_time" IS '最后使用时间';
|
||||
|
||||
/*
|
||||
@触发器设置,功能:自动记录更新时间
|
||||
@触发器名为 SEQUENCES_UPDATE_TIME
|
||||
@触发器执行范围为每行生效
|
||||
*/
|
||||
CREATE OR REPLACE TRIGGER SEQUENCES_UPDATE_TIME BEFORE UPDATE ON "sequences" FOR EACH ROW
|
||||
BEGIN
|
||||
NEW."update_time":=SYSDATE;
|
||||
END;
|
||||
|
||||
/*启动触发器*/
|
||||
ALTER TRIGGER SEQUENCES_UPDATE_TIME ENABLE;
|
||||
13
src/main/resources/dm/create_table_sequences_unlock.sql
Normal file
13
src/main/resources/dm/create_table_sequences_unlock.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
CREATE TABLE IF NOT EXISTS "sequences_unlock"
|
||||
(
|
||||
"key" VARCHAR(64) NOT NULL,
|
||||
"type" VARCHAR(64) NOT NULL,
|
||||
"seq" BIGINT NOT NULL,
|
||||
"create_time" TIMESTAMP NOT NULL,
|
||||
PRIMARY KEY ("key", "type", "seq")
|
||||
);
|
||||
COMMENT ON TABLE "sequences_unlock" IS '未锁定序号表';
|
||||
COMMENT ON COLUMN "sequences_unlock"."key" IS '序号英文名称';
|
||||
COMMENT ON COLUMN "sequences_unlock"."type" IS '序号类型';
|
||||
COMMENT ON COLUMN "sequences_unlock"."seq" IS '尚未锁定的序号';
|
||||
COMMENT ON COLUMN "sequences_unlock"."create_time" IS '使用时间';
|
||||
13
src/main/resources/dm/create_table_sequences_unused.sql
Normal file
13
src/main/resources/dm/create_table_sequences_unused.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
CREATE TABLE IF NOT EXISTS "sequences_unused"
|
||||
(
|
||||
"key" VARCHAR(64) NOT NULL,
|
||||
"type" VARCHAR(64) NOT NULL,
|
||||
"seq" BIGINT NOT NULL,
|
||||
"create_time" TIMESTAMP NOT NULL,
|
||||
PRIMARY KEY ("key", "type", "seq")
|
||||
);
|
||||
COMMENT ON TABLE "sequences_unused" IS '闲置序号表';
|
||||
COMMENT ON COLUMN "sequences_unused"."key" IS '序号英文名称';
|
||||
COMMENT ON COLUMN "sequences_unused"."type" IS '序号类型';
|
||||
COMMENT ON COLUMN "sequences_unused"."seq" IS '闲置的的序号';
|
||||
COMMENT ON COLUMN "sequences_unused"."create_time" IS '设为闲置序号的时间';
|
||||
@@ -3,5 +3,6 @@ CREATE TABLE IF NOT EXISTS `sequences`
|
||||
`key` VARCHAR(64) NOT NULL COMMENT '序号英文名称',
|
||||
`type` VARCHAR(64) NOT NULL COMMENT '序号类型',
|
||||
`seq` BIGINT(20) NOT NULL COMMENT '已使用到的序号',
|
||||
`update_time` DATETIME NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '最后使用时间',
|
||||
PRIMARY KEY (`key`, `type`)
|
||||
) COMMENT '当前序号表';
|
||||
@@ -1,11 +1,32 @@
|
||||
CREATE TABLE IF NOT EXISTS "sequences"
|
||||
(
|
||||
"key" VARCHAR(64) NOT NULL,
|
||||
"type" VARCHAR(64) NOT NULL,
|
||||
"seq" INT8 NOT NULL,
|
||||
"key" VARCHAR(64) NOT NULL,
|
||||
"type" VARCHAR(64) NOT NULL,
|
||||
"seq" INT8 NOT NULL,
|
||||
"update_time" TIMESTAMP,
|
||||
PRIMARY KEY ("key", "type")
|
||||
);
|
||||
COMMENT ON TABLE "sequences" IS '当前序号表';
|
||||
COMMENT ON COLUMN "sequences"."key" IS '序号英文名称';
|
||||
COMMENT ON COLUMN "sequences"."type" IS '序号类型';
|
||||
COMMENT ON COLUMN "sequences"."seq" IS '已使用到的序号';
|
||||
COMMENT ON COLUMN "sequences"."seq" IS '已使用到的序号';
|
||||
COMMENT ON COLUMN "sequences"."update_time" IS '最后使用时间';
|
||||
|
||||
|
||||
/*
|
||||
触发器函数,用户更新update_time字段
|
||||
*/
|
||||
CREATE OR REPLACE FUNCTION SEQUENCES_UPDATE_TIME() RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
NEW."update_time" := current_timestamp;
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
|
||||
/*
|
||||
@触发器设置,功能:自动记录更新时间
|
||||
@触发器名为 SEQUENCES_UPDATE_TIME
|
||||
@触发器执行范围为每行生效
|
||||
*/
|
||||
DROP TRIGGER IF EXISTS SEQUENCES_UPDATE_TIME ON "sequences" CASCADE;
|
||||
CREATE TRIGGER SEQUENCES_UPDATE_TIME BEFORE UPDATE ON "sequences" FOR EACH ROW EXECUTE FUNCTION SEQUENCES_UPDATE_TIME();
|
||||
Reference in New Issue
Block a user