오라클 랜덤 키생성 방법 2가지 FUNCTION(함수) 

 

첫번째 GUID

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

CREATE FUNCTION RANDOM_GUID

    RETURN VARCHAR2 IS

    RNG    NUMBER;

    N      BINARY_INTEGER;

    CCS    VARCHAR2 (128);

    XSTR   VARCHAR2 (4000) := NULL;

  BEGIN

    CCS := '0123456789' || 'ABCDEF';

    RNG := 15;

 

    FOR I IN 1 .. 32 LOOP

      N := TRUNC (RNG * DBMS_RANDOM.VALUE) + 1;

      XSTR := XSTR || SUBSTR (CCS, N, 1);

    END LOOP;

 

    RETURN XSTR;

  END RANDOM_GUID;

다음 함수는 sys_guid ()를 사용하여 uuid 형식으로 변환하는 방법입니다.

 

1

2

3

4

5

6

create or replace function random_uuid return VARCHAR2 is

  v_uuid VARCHAR2(40);

begin

  select regexp_replace(rawtohex(sys_guid()), '([A-F0-9]{8})([A-F0-9]{4})([A-F0-9]{4})([A-F0-9]{4})([A-F0-9]{12})''\1-\2-\3-\4-\5'into v_uuid from dual;

  return v_uuid;

end random_uuid;

 

입맛에 맞게 골라쓰기

 

 

 

자바 내장함수 RandomUUID() 이용하여 만들기 바로가기

https://mo-world.tistory.com/entry/%EC%98%A4%EB%9D%BC%ED%81%B4-%EB%9E%9C%EB%8D%A4-%ED%82%A4-%EC%83%9D%EC%84%B1-JAVA%EB%82%B4%EC%9E%A5-%ED%95%A8%EC%88%98-RAMDOMUUID-%EC%9D%B4%EC%9A%A9%ED%95%98%EC%97%AC-%EB%A7%8C%EB%93%A4%EA%B8%B0

+ Recent posts