我希望具有唯一 6 个字符 ID(即 zab4ac、cba884...)的用户可以搜索我的内容。
我正在考虑创建一个id character(6) primary key
列,但后来我开始想知道如何为新行创建 id。它们可以是随机的或连续的,这对我来说并不重要,但我想知道最好的选择是什么:
- 对于每个
INSERT
,执行 aSELECT
来获取最后一个键,然后“递增它”? - 或者创建一个随机密钥并验证它是否已经存在?
由于这些看起来效率低下(每次插入 2 个查询),是否有一种自动化的方法来做到这一点,例如serial
,但对于字符(000009、00000a、00000b、...、00000z、000010、...或更随机的东西) ?或者我应该在数据库中使用serial
并将其转换为用户的字符串?
我想看看我是否缺少一种简单有效的解决问题的方法。