我正在研究一个使用整数作为多个表的主键的数据库。我想让主键相对难以猜测 - 它们不需要超紧,只是不能在数百个中增加整数。由于我使用现有数据将其改造为现有模式,因此更改主键(integer
)的数据类型是不可行的。我想知道的是如何最好地生成ID。到目前为止,我可以想到这些选项:
UUID()
生成UUID并将其转换为整数。CONCAT(UNIX_TIMESTAMP(),SUBSTRING(RAND() FROM 3 FOR 6))
我也对其他建议持开放态度。
我很感激你能提供的任何想法。
谢谢, 罗斯
答案 0 :(得分:4)
你为什么这样做?你会搞砸数据的物理存储方式。如果您需要通过URL进行查找,请使用辅助索引并使其成为GUID。