小编Cor*_*rch的帖子

在 Oracle 中,sequence.nextval 怎么可能为空?

我有一个像这样定义的 Oracle 序列:

CREATE SEQUENCE  "DALLAS"."X_SEQ"  
    MINVALUE 0 
    MAXVALUE 999999999999999999999999999 
    INCREMENT BY 1 START WITH 0 NOCACHE  NOORDER  NOCYCLE ;
Run Code Online (Sandbox Code Playgroud)

它在存储过程中用于插入记录:

PROCEDURE Insert_Record
                (p_name    IN  VARCHAR2,                
                 p_userid  IN  INTEGER,
                 cur_out   OUT TYPES_PKG.RefCursor)
    IS
        v_id NUMBER := 0;
    BEGIN
        -- Get id value from sequence
        SELECT x_seq.nextval
          INTO v_id
          FROM dual;

        -- Line below is X_PKG line 40
        INSERT INTO X
            (the_id,            
             name,                        
             update_userid)
          VALUES
            (v_id,
             p_name,                        
             p_userid);

        -- Return new id
        OPEN cur_out FOR
            SELECT v_id the_id
              FROM dual;
    END; …
Run Code Online (Sandbox Code Playgroud)

oracle sequence

11
推荐指数
1
解决办法
9933
查看次数

标签 统计

oracle ×1

sequence ×1