通过Oracle函数返回一个UUID
create or replace function F_GET_UUID(p_length in INT) return varchar2 is
Result varchar2(200);
/*************************************************************
*说明:返回一个指定长度不超过33位的UUID字符串
*
**************************************************************/
V_LENGTH VARCHAR2(33) := P_LENGTH;
V_UUID VARCHAR2(33) ;
begin
select sys_guid() into V_UUID from dual;
IF V_LENGTH IS NULL OR V_LENGTH = '' THEN
V_LENGTH := 30;
END IF;
IF V_LENGTH > 33 OR V_LENGTH <=0 THEN
V_LENGTH :=30;
END IF;
Result := substr(V_UUID,0,V_LENGTH);
--dbms_output.put_line(Result);
return(Result);
end F_GET_UUID;