Procédure ou fonction pour récupérer une séquence
Bonjour,
Je voudrais récupérer un numéro de séquence et l'insérer dans une table dans un champs de type varchar. Je voudrais savoir quelle serait la plus appropriée parmi les 2 solutions proposées ci-dessous.
Code:
1 2 3 4 5 6 7
| CREATE OR REPLACE FUNCTION GET_SEQ_GROUP_ENT(SEQ_NAME IN VARCHAR2) AS
DECLARE
seq_out NUMBER;
BEGIN
EXECUTE IMMEDIATE 'SELECT ' || SEQ_NAME || '.NEXTVAL from dual' INTO seq_out;
RETURN seq_out;
END; |
ou
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| create or replace procedure next_val (p_sequence_name varchar2)
as
v_nextval integer;
v_select varchar2(100);
begin
v_select := 'select '||p_sequence_name||'.nextval from dual';
execute immediate v_select into v_nextval;
dbms_output.put_line('Nextval is: '||TO_CHAR(v_nextval));
end; |
Merci,