【发布时间】:2013-11-01 01:59:21
【问题描述】:
假设我有一个类似帖子的表,其中包含 id、body、created_at 等典型列。我想在创建每个帖子时生成一个唯一的字符串,用于类似 url 缩短器之类的东西。所以可能是一个 10 个字符的字母数字字符串。它需要在表中是唯一的,就像主键一样。
理想情况下,Postgres 应该有办法处理这两个问题:
- 生成字符串
- 确保其唯一性
它们必须齐头并进,因为我的目标是不必担心我的应用程序中的任何唯一性强制代码。
【问题讨论】:
-
不能只用主键吗?
-
我想要一个面向外部的标识符,它不会向公众透露对象数量。
-
我发现的两个项目可以解决我的问题:github.com/inscitiv/pg_random_idgithub.com/norman/friendly_id
-
另一个有趣的项目:github.com/turbo/pg-shortkey
标签: postgresql