[Db] stored function per generare stringa unica

Marcello Vezzelli marcello a vezz.it
Mer 22 Ago 2007 11:16:13 CEST


Ciao a tutti,
mi stavo chiedendo se era possibile utilizzare una stored function per 
generare un identificativo stringa unico all'interno di una tabella, 
PRIMA di inserire il record nella tabella stessa.
Vorrei fare così da php:
- invoco la function che mi ritorna un identificativo univoco
- inserisco il record utilizzando l'identificativo ottenuto

Ho però il sospetto che le due operazioni dovrebbero essere inserite 
all'interno della stessa stored function, perché potrebbe succedere che 
nel caso di due insert contemporanee (su transazioni diverse) la 
function mi ritorni due identificativi identici.

Quindi dovrei farmi una function che di fatto crea il record in 
questione creando l'identificativo unico, prendendo in ingresso tutti i 
campi che mi servono per popolare il record.

Questa funzione quindi dovrebbe:
- creare l'identificativo univoco
- controllare che non esista nella tabella con una select
- inserire il record popolando i campi dai parametri
- ritornare l'id del record inserito

Ragionamento corretto?

Saluti
Marcello



Maggiori informazioni sulla lista Db