Mysql
 sql >> Database >  >> RDS >> Mysql

Chiave primaria UUID MySQL - generata da PHP o da MySQL?

No, non è possibile che PHP generi esattamente lo stesso UUID() come MySQL perché è un numero (completamente) casuale.

Sembra che il tuo problema sia che ti piace usare UUID() in MySQL ma non voglio eseguire una query aggiuntiva per capire quale sia il nuovo UUID è.

Allora perché non fare in modo che PHP crei l'UUID da utilizzare come chiave primaria nel tuo INSERT domanda?? Questo commento su php.net dovrebbe mostrarti come farlo.

Utilizzando queste funzioni di esempio:

$uuid = UUID::v4();
$sql = "INSERT INTO mytable (uuid, foo) VALUES ('{$uuid}', 'bar');";
echo "The UUID is: ". $uuid;

Modifica :Ci sono diversi metodi in quella pagina che generano diversi tipi di UUID S. v4 è pseudo-casuale, ma potresti usare una versione diversa o creare il tuo UUID generatore.