----创建sequence序列---
CREATE OR REPLACE SEQUENCE SEQ_DATA_ID ----OR REPLACE 存在即替换---
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXvalue -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10;
----删除sequence 序列 ------
drop sequence SEQ_DATA_ID
----创建函数------
CREATE OR REPLACE FUNCTION ISP.GET_TYPE_IDS(TYPE_NAME VARCHAR(7))
RETURNS VARCHAR(17)
LANGUAGE SQL
BEGIN ---- atomic 开启事务 ---
DECLARE IDD VARCHAR(20);
SELECT TYPE_NAME||REPEAT('0',10-LENGTH(TO_CHAR(SEQ_DATA_ID.NEXTVAL)))||SEQ_DATA_ID.NEXTVAL INTO IDD FROM SYSIBM.DUAL;
RETURN IDD;
END
-----使用函数------
SELECT ISP.GET_TYPE_IDS('QDT1234') FROM SYSIBM.DUAL;
-----删除函数-----
drop function ISP.GET_TYPE_ID;