sql >> Databáze >  >> RDS >> Mysql

Jedinečné, nepředvídatelné, 12místné celočíselné id

Použijte zřetězení jedinečného zvýšeného čísla a náhodně generovaného čísla.

Jedinečné zvýšené číslo zajišťuje, že výsledek je jedinečný, a díky náhodně vygenerovanému číslu je stěží uhodnutelné.

To je jednoduché a je zaručeno, že nedojde ke kolizi (1). Výsledek je přírůstkový , částečně náhodné a nepředvídatelné (za předpokladu, že část náhodného čísla je generována s dobrým PRNG).

(1):Musíte zadat buď id a random s nulami, nebo je oddělit nějakým nečíselným znakem.

S databází MySQL to znamená:

CREATE TABLE foo (
    id int not null auto_increment,
    random int not null,
    ...
    primary key (id)
);


  1. PDO byly řádky ovlivněné během příkazu spuštění

  2. Doctrine Query k nalezení celkového počtu výsledků v MySQL s LIMIT

  3. Jak implementovat dávkové načítání pomocí Fluent NHibernate při práci s Oracle?

  4. Předat parametry WHERE do zobrazení PostgreSQL?