zoukankan      html  css  js  c++  java
  • Oracle 生成uuid方法

    近日,遇到朋友问及如何生成UUID 是 通用唯一识别码(Universally Unique Identifier)方法,其实数据中是支持的

    Oracle中生成跨系统的唯一识别符UUID非常方便,比生成序列还简单,直接用sys_guid()就行,

    例如
    select sys_guid() from dual 会产生一个跟MAC地址、生成时间相关的一个32位16进制的随机数。

    数据类型是 raw(16) 有32个字符。


    它的生成机制足以保证全球所有系统产生的海量guid重复可能性非常小。这在AIXM概念中非常重要。

    如果要让返回的uuid满足标准格式,可利用如下函数实现:

    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;

    SQL> select get_uuid from dual ;
     
    GET_UUID
    --------------------------------------------------------------------------------
    a8f662b8-6e7a-13fe-e040-970a437c6bd7
  • 相关阅读:
    第二题
    第一题
    biancheng
    用泰勒展开式计算sin
    矩阵求和
    1
    ti
    实验10
    实验9
    实验8
  • 原文地址:https://www.cnblogs.com/tscloud/p/13184186.html
Copyright © 2011-2022 走看看