Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: unique ID - globally

Re: unique ID - globally

From: Thomas Kyte <tkyte_at_us.oracle.com>
Date: Fri, 18 Feb 2000 18:27:19 -0500
Message-ID: <b2lrask845l1mda03mdf7lkkk85pbtaebr@4ax.com>


A copy of this was sent to S P Arif Sahari Wibowo <arifsaha_at_null.net> (if that email address didn't require changing) On Fri, 18 Feb 2000 16:35:48 -0600, you wrote:

>Hi!
>
>Do you know how to make a unique ID for primary key - globally?
>
>It seems like people agree that the best unique ID locally - in once
>server - is using the sequence, right? But how about unique ID from
>multiple server, that not necessarily have good connection between them?
>
>What I am thinking of is concatenate the sequence number from one server
>with one number that uniq to a server, IP number probably? Well, how
>oracle can find out its own IP number?
>
>Other idea?
>
>Thank you.

A common way is to do something like:

create sequence my_seq start with 1 increment by 100000;

at site 1.

create sequence my_seq start with 2 increment by 200000;

at site 2.

and so on. If you have less then 100,000 sites -- this'll work and since sequences can generate numbers upto 28 digits long -- you don't have to worry about "wasting" a couple of numbers. very doubtful you would run out.

In oracle8i, release 8.1 there is a new function:

ops$tkyte_at_8i> select sys_guid() from dual;

SYS_GUID()



60DA948240D75882E034080020A767E0

It generates and returns a globally unique identifier (RAW value) made up of 16 bytes. On most platforms, the generated identifier consists of a host identifier and a process or thread identifier of the process or thread invoking the function, and a nonrepeating value (sequence of bytes) for that process or thread.

--
See http://osi.oracle.com/~tkyte/ for my columns 'Digging-in to Oracle8i'... Current article is "Part I of V, Autonomous Transactions" updated June 21'st  

Thomas Kyte                   tkyte_at_us.oracle.com
Oracle Service Industries     Reston, VA   USA

Opinions are mine and do not necessarily reflect those of Oracle Corporation Received on Fri Feb 18 2000 - 17:27:19 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US