首页 > 解决方案 > Oracle 中的增量 ID

问题描述

我想为表中的每个新输入数据获取一个自动增量 ID。但我无法得到它,我已经在寻找参考资料,但它无法解决我的问题。表 param_renewal 是一个空表。

这是我的程序

procedure get_param
    (
--        p_ID            IN VARCHAR2,
        P_TYPE          IN VARCHAR2,
        P_DESC  IN VARCHAR2,
        P_ACTIVE                    IN VARCHAR2,
        P_CRE_DATE                  IN DATE,
        P_MOD_BY                        IN VARCHAR2,
        P_MOD_DATE                    IN DATE
        --
        ,p_userid                   in  varchar2
--      ,p_CURSOR                   OUT Types.ref_cursor
        --
        ,p_status                   out varchar2
        ,p_error_message            out varchar2
    )
    IS
    
    P_id varchar(250 byte);
    
    BEGIN
    SELECT MAX(COUNT(*))+1 INTO P_ID FROM PARAM_RENEWAL;
    INSERT INTO PARAM_RENEWAL
    VALUES(P_ID, P_TYPE, P_DESC, P_ACTIVE, P_USERID, 
    SYSDATE, P_USERID, SYSDATE)
    
    ;
    p_status := '1';
            p_error_message := 'ok';
    EXCEPTION
                WHEN OTHERS THEN
                    p_status := '0';
                    p_error_message := SUBSTR(SQLERRM, 1, 100);
    
    END get_param;

谢谢你 :)

标签: sqloracledatatable

解决方案


推荐阅读