动态前缀与自增加数函数共享的oracle生成
创建或替换
功能getinvitationno(沪指VARCHAR2,num1 VARCHAR2,num2 VARCHAR2,sessionsetting VARCHAR2)
返回空
current_user authID是语用autonomous_transaction;需要使用current_user许可防止语用立即执行命令,autonomous_transaction自制交易防止DML中不可回避的问题。
totalprev VARCHAR2(50);
hassequences数;
里诺VARCHAR2(50);
开始
-数字的前缀
totalprev:=上期num1 num2 sessionsetting | | | | | |;
-创建序列
select count(*)为hassequences从user_sequences哪里sequence_name = totalprev;
如果hassequences <> 1
执行immediate'create序列| | totalprev | | 'increment 1从1起始的9999999 nocycle;
最后如果;
通过序列的Natori序列的动态值,值转换为7位的序列长度的字符串,填充长度小于0
执行immediate'select totalprev ''' | | | | ''' | | to_char(' | | totalprev | |'。Nextval,''fm0000000)从dual'into里诺;
to_char(FM)在0跟代表的位数,0少加油;加上FM可以避免空间的出现,在空间的前侧是符号位,如果你使用的是to_char在消极的,它是用来显示空间的一部分,因为是积极的,所以不显示+,但在空间代替
返回雷诺;
结束;
测试
复制代码代码如下所示:
Select GetInvitationNO('p','1',01,'114)从双
- Oracle是Oracle中实际存在的表,它由任何用户读取,通常用于没有目标表的SELECT语句块中。