我想写一个PHP函数,它将创建50000长度为4的唯一随机字母数字字符串并将其插入到db表中.我该怎么做?
解决方法:
for($i = 0; $i < 50000; $i++)
$pdo->exec("INSERT INTO table_x (the_string) VALUES (UUID());");
正如here所述
编辑:替代插入方式(条纹破折号)
for($i = 0; $i < 50000; $i++)
$pdo->exec("INSERT INTO table_x (the_string) VALUES (REPLACE(UUID(), '-', ''));");
编辑值得一提:
在一个服务器内,UUID对地理位置和精确时间以及sha-1随机值进行编码.
因此,冲突概率仅存在于单独的服务器中(例如,在合并其数据集时).
只要我们不溢出地理位置/时隙的容量,就可以保证不会在本地创建重复值.
作为优化(数据库读取速度)的问题,将UUID转换为二进制(16)字段(并使表中的列与该数据类型匹配)更快,更紧凑.