為什麼要使用函數來獲取序列值請看這裡
-- 創建獲取序列下一個值的函數
create or replace function get_seq_next (seq_name in varchar2) return number
is
seq_val number ;
begin
execute immediate 'select '|| seq_name|| '.nextval from dual' into seq_val ;
return seq_val ;
end get_seq_next;
-- 創建獲取序列下一個值的函數(得先獲取下一個值後才能使用)
create or replace function get_seq_curr (seq_name in varchar2) return number
is
seq_val number ;
begin
execute immediate 'select '|| seq_name|| '.currval from dual' into seq_val ;
return seq_val ;
end get_seq_curr;