sql >> Database >  >> RDS >> SQLite

Hoe RandomBlob() werkt in SQLite

De SQLite randomblob() functie retourneert een blob met pseudo-willekeurige bytes.

Het aantal bytes wordt bepaald door het argument. Als het argument minder dan 1 is, wordt een willekeurige blob van 1 byte geretourneerd.

Voorbeeld

Hier is een voorbeeld om te demonstreren.

SELECT randomblob(8);

Resultaat:

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

Genereer een GUID

U kunt randomblob() . gebruiken in combinatie met de hex() functie om een ​​Globally Unique Identifier (GUID) te genereren door het volgende te doen.

SELECT hex(randomblob(16));

Resultaat:

6A70117D7C25523E0AF82C89D2A0A602

Houd er rekening mee dat een GUID, ook wel bekend als Universally Unique Identifier (UUID), 128 bits (16 bytes) is. Daarom moet u 16 opgeven als het argument als u een echte GUID wilt genereren.

Niets houdt u tegen om een ​​waarde te genereren met meer of minder bytes.

Je kunt ook de lower() . gebruiken functie als je de GUID nodig hebt om kleine letters te gebruiken.

SELECT lower(hex(randomblob(16)));

Resultaat:

50ecfe91179900a8e8cdc583ad5a7658

  1. Wat is de meest efficiënte manier om de tijd vanaf datetime te trimmen?

  2. PostgreSQL:rol is niet toegestaan ​​om in te loggen

  3. Laatste woord in een zin:In SQL (reguliere uitdrukkingen mogelijk?)

  4. Hoe kan ik 1 tot 10 afdrukken zonder Loop in PL/SQL te gebruiken?