Documentazione di PostgreSQL 9.0 > Il linguaggio SQL > Tipi di Dato > Tipo UUID
PrecedenteTipi ricerca testoTipo XMLSuccessivo

8.12. Tipo UUID

Il tipo dato uuid memorizza Universally Unique Identifiers (UUID) come definito da RFC 4122, ISO/IEC 9834-8:2005, e relativi standard. (Alcuni sistemi si riferiscono a questo tipo dato comei identificatore unico globale, o GUID ). Questo identificatore è una quantità di 128 bit generata da un algoritmo scelto per rendere molto improbabile che lo stesso identificatore verrà generato da qualcun'altro nell'universo conosciuto usando lo stesso algoritmo. Per cui, per i sistemi distribuiti, questi identificatori forniscono una garanzia di unicità migliore di quella ottenuta utilizzando i generatori di sequenza, che sono unici solo in un singolo database.

Un UUID è scritto come una sequenza di cifre esadecimali in minuscolo, in diversi gruppi separati da trattini, specificatamente un gruppo di 8 cifre seguito da tre gruppi di 4 cifre seguiti da un gruppo di 12 cifre, per un totale di 32 cifre che corrispondono a 128 bit. Un esempio di un UUID in questa forma standard è il seguente:

a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11

PostgreSQL™ accetta anche le seguenti forme alternative in input: utilizzo di cifre maiuscole, il formato standard racchiuso tra parentesi, l'omissione di alcuni, o tutti, i trattini, e l'aggiunta di trattini dopo qualsiasi gruppo di cifre. Esempi sono:

A0EEBC99-9C0B-4EF8-BB6D-6BB9BD380A11
{a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11}
a0eebc999c0b4ef8bb6d6bb9bd380a11
a0ee-bc99-9c0b-4ef8-bb6d-6bb9-bd38-0a11
{a0eebc99-9c0b4ef8-bb6d6bb9-bd380a11}

L'output è sempre nella forma standard.

PostgreSQL™ fornisce, per gli UUID, funzioni di memorizzazione e di confronto, ma il core del database non comprende nessuna funzione per la generazione di UUID, perchè nessun singolo algoritmo è valido per ogni applicazione. Il modulo contrib contrib/uuid-ossp fornisce funzioni che implementano alcuni algoritmi standard. In alternativa, gli UUID possono essere generati da applicazioni client o altre librerie chiamate tramite una funzione lato server.

Documentazione di PostgreSQL 9.0 > Il linguaggio SQL > Tipi di Dato > Tipo UUID
PrecedenteTipi ricerca testoTipo XMLSuccessivo