SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

Como RandomBlob() funciona no SQLite


O SQLite randomblob() A função retorna um blob contendo bytes pseudo-aleatórios.

O número de bytes é determinado pelo seu argumento. Se seu argumento for menor que 1, um blob aleatório de 1 byte será retornado.

Exemplo


Aqui está um exemplo para demonstrar.
SELECT randomblob(8);

Resultado:
randomblob(8)
-------------
EqƋy      

Gerar um GUID


Você pode usar randomblob() em conjunto com o hex() para gerar um identificador global exclusivo (GUID) fazendo o seguinte.
SELECT hex(randomblob(16));

Resultado:
6A70117D7C25523E0AF82C89D2A0A602

Observe que um GUID, também conhecido como identificador exclusivo universal (UUID), tem 128 bits (16 bytes). Portanto, você precisa especificar 16 como o argumento se desejar gerar um GUID verdadeiro.

Não há nada que impeça você de gerar um valor com mais ou menos bytes.

Você também pode usar o lower() função se você precisar que o GUID use letras minúsculas.
SELECT lower(hex(randomblob(16)));

Resultado:
50ecfe91179900a8e8cdc583ad5a7658