Zadejte hledaný výraz...

Náhodný string jako ID v MySQL

SiNTEx
verified
rating uzivatele
3. 10. 2013 20:59:33
Potřebuji mít v databázi jako ID náhodný string o délce 8 znaků.
Napadlo mě několik možných řešení, ale mám pocit, že musí existovat něco sofistikovanějšího, něž vygenerovat náhodný string a pak zjišťovat, jestli už nebyl použit, nebo počítat md5 pro posloupnost nějakých čísel a pak použít prvních 8 znaků.
Jako příklad můžu uvést 9GAG (http://9gag.com/gag/a1AonjP).
3. 10. 2013 20:59:33
https://webtrh.cz/diskuse/nahodny-string-jako-id-v-mysql#reply952194
Vít Michalek
verified
rating uzivatele
(14 hodnocení)
3. 10. 2013 21:11:26
Jde to,
třeba takto, vždy uděláš select na poslední záznam at víš poslední kod, a pro nový kod použiješ např takovou funkci:
Ale určitě to jde napsat jednodušeji :)
3. 10. 2013 21:11:26
https://webtrh.cz/diskuse/nahodny-string-jako-id-v-mysql#reply952193
qwertr
verified
rating uzivatele
(7 hodnocení)
3. 10. 2013 21:32:41
Na toto sa pouziva GUID. Mava tak 32 znakov.
V ORACLI by sa to dalo pouzit napr. takto insert into mytable (guid_col, data) values (sys_guid(), 'xxx')
Pod .net -om System.GUID.NewGUID()
V PHP ale len na windowsoch com_create_guid()
3. 10. 2013 21:32:41
https://webtrh.cz/diskuse/nahodny-string-jako-id-v-mysql#reply952192
Vít Michalek
verified
rating uzivatele
(14 hodnocení)
3. 10. 2013 21:36:59
A nebo toto:
http://stackoverflow.com/questions/1846202/php-how-to-generate-a-random-unique-alphanumeric-string
3. 10. 2013 21:36:59
https://webtrh.cz/diskuse/nahodny-string-jako-id-v-mysql#reply952191
SiNTEx
verified
rating uzivatele
3. 10. 2013 22:56:11
Napsal jsem si jednoduchý program v C# a zjistil jsem, že pokud budu generovat md5 otisk, ze kterého použiji jen prvních 8 znaků, z posloupnosti čísel od 0, tak ke kolizi dojde nejdříve u čísla 82 945. To mi bohatě stačí. Každopádně děkuji za pomoc.
3. 10. 2013 22:56:11
https://webtrh.cz/diskuse/nahodny-string-jako-id-v-mysql#reply952190
node
verified
rating uzivatele
(5 hodnocení)
4. 10. 2013 00:18:36
http://en.wikipedia.org/wiki/Uuid
4. 10. 2013 00:18:36
https://webtrh.cz/diskuse/nahodny-string-jako-id-v-mysql#reply952189
Bacon
verified
rating uzivatele
(2 hodnocení)
4. 10. 2013 01:12:31
ID můžeš dál ukládat jako normální čísla a pro převod na unikátní hashe použij toto: http://www.hashids.org/
4. 10. 2013 01:12:31
https://webtrh.cz/diskuse/nahodny-string-jako-id-v-mysql#reply952188
SiNTEx
verified
rating uzivatele
4. 10. 2013 17:20:27
Napsal Bacon;1005923
ID můžeš dál ukládat jako normální čísla a pro převod na unikátní hashe použij toto: http://www.hashids.org/
Super, přesně tak nějak jsem si to představoval. Děkuji.
4. 10. 2013 17:20:27
https://webtrh.cz/diskuse/nahodny-string-jako-id-v-mysql#reply952187
Pro odpověď se přihlašte.
Přihlásit