【发布时间】:2011-11-21 02:24:23
【问题描述】:
我想在当前使用 PostgreSQL 数据库的 Ruby on Rails 应用程序中为我的表添加辅助生成键。如果可能的话,我想成为数据库不可知论者。目标是在 URL 上使用这个键,这样外部用户就无法猜测数据库的大小或我拥有的每种类型的记录数量。
我知道 UUID,但它们很长而且有点矫枉过正。另外,这个字段应该被索引,我知道索引中的随机数据是有问题的。
如果没有干净的解决方案,我会制定一个小公式来应用到 id 并确保我检查冲突并避免它们;但我确定我不是第一个遇到这个问题的人。
【问题讨论】:
-
索引中的随机数据不是问题。不过,聚集索引中的随机数据可能是个问题。
-
关于 UUID,您是否因为 16 字节太长而拒绝它们?如果是这样,多少字节才足够长?
-
Catcall:大概 6 个字节就够了,不过我不确定。
标签: ruby-on-rails postgresql uniqueidentifier