oracle生成单据号
--创建单据号存放表 CREATE TABLE BU_TAB( DOC_NUM NUMBER --生成的单据号 ); --单据号 create table cux_doc_num( tab varchar2(40), --表名 col varchar2(80), --列明 prefix varchar2(20), --前缀 sequence number --序号 ); --记得创建索引 create index cux_doc_num_u1 on cux_doc_num(tab,col,prefix); --单据号返回函数 create or replace function get_doc_num(p_tab in varchar, --表名 p_col in varchar, --列名 p_prefix in varchar --前缀 --,seq_len in integer defatlt 3, --,break_num_reuse varchar2 default 'N' --字符型入能,默认'N',指出是否对断号进行重用,默认不重用 ) return varchar is --返回的单据号 pragma autonomous_transaction; --v_result varchar2(200); n_sequence number; c_sequence