首页 > 代码库 > oracle生成.net的guid方法;
oracle生成.net的guid方法;
在Oracle SQL 提供了一个生成uuid的函数sys_guid:
http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/functions187.htm#i79194
http://en.wikipedia.org/wiki/Universally_unique_identifier
SQL> select sys_guid() from dual ;
SYS_GUID()
--------------------------------
A8F662B86E7413FEE040970A437C6BD7
但该函数如下问题:
1.返回类型为RAW
2.没有- (dash)分隔符
3.返回的字母大写
为了使产生的uuid符合rfc 4122的标准(http://tools.ietf.org/html/rfc4122)
创建函数如下,测试通过。
CREATE OR REPLACE
FUNCTION get_uuid
RETURN VARCHAR
IS
guid VARCHAR (50);
BEGIN
guid := lower(RAWTOHEX(sys_guid()));
RETURN
substr(guid,1,8)||‘-‘||substr(guid,9,4)||‘-‘||substr(guid,13,4)||‘-‘||substr(guid,17,4)||‘-‘||substr(guid,21,12);
END get_uuid;
oracle生成.net的guid方法;
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。