有没有办法让Mysql使用字母和数字生成唯一ID? (或PHP)

时间:2011-05-07 17:09:52

标签: php mysql sql

有没有办法让Mysql中的唯一id(主键)生成数字和字母以保持id尽可能短?如果我不能在Mysql中这样做,我怎么能让PHP生成这个?谢谢:))

3 个答案:

答案 0 :(得分:6)

编码为Base 36是一个很好的选择,因为它使用0-9 A-Z,因此是紧凑的。 你可以使用整数保留mysql并在两个in PHP之间进行转换,或者从递增的id + trigger中获得一个基数为36的值。

答案 1 :(得分:1)

除非您在插入后使用MySQL触发器自动更新字段,否则无法执行此操作。其他选项是使用PHP脚本处理唯一的字母数字值:

1) insert
2) get insert_id();
3) generate unique alphanumeric string
4) update

答案 2 :(得分:0)

我在mysql中并不知道它,但在PHP中你可以使用uniqid

http://php.net/manual/en/function.uniqid.php

相关问题