使用Oracle过程生成固定长度的SEQUENCE

时间:2015-05-19 10:27:23

标签: oracle stored-procedures

我有一个Oracle SEQUENCE,我使用以下存储过程执行:

create or replace PROCEDURE NEXT_NUMBER
(sequence_out OUT VARCHAR)
IS
sequence_num INTEGER;
i INTEGER;
iter INTEGER;
BEGIN
sequence_num := TEST_SEQUENCE.NEXTVAL;
sequence_out := TO_CHAR(sequence_num);
iter := 6-LENGTH(TO_CHAR(sequence_num));
FOR i IN 1..iter
LOOP
sequence_out := '0' || sequence_out;
END LOOP;
END;

我需要使用该过程获取下一个序列号,并在序列长度小于6位时在开头添加零。

我在程序中有一个for循环,它应该将前导零连接到字符串,但我不会在输出中得到前导零。

谁能明白为什么?非常感谢

0 个答案:

没有答案