码迷,mamicode.com
首页 > 数据库 > 详细

随机生成编码(判断重复)(oracle函数)

时间:2015-08-03 11:35:49      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:oracle   函数   elong   随机编码   

原文地址——http://blog.csdn.net/qq525099302/article/details/47253351

create or replace function generate_coupons_code(v_length in number:=16) return varchar2 is
  v_code varchar2(70);
  type t_arr is varray(16) of varchar2(1);
  char_arr t_arr;
  flag number(1,0):= 0;
begin
  char_arr:=t_arr(‘0‘,‘1‘,‘2‘,‘3‘,‘4‘,‘5‘,‘6‘,‘7‘,‘8‘,‘9‘,‘a‘,‘b‘,‘c‘,‘d‘,‘e‘,‘f‘);
  for i in 1..v_length  
  loop  
      v_code:=v_code||char_arr(floor(dbms_random.value(1,17)));
      --dbms_output.put_line(floor(dbms_random.value(1,17)));
  end loop;
  select count(1) into flag from b_coupons c WHERE c.code = v_code;
  if flag > 0 then
    return generate_coupons_code(v_length);
  end if;
  return(v_code);
end generate_coupons_code;

技术分享

版权声明:本文为博主原创文章,未经博主允许不得转载。

随机生成编码(判断重复)(oracle函数)

标签:oracle   函数   elong   随机编码   

原文地址:http://blog.csdn.net/qq525099302/article/details/47253351

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!