展开讨论

创业与收入经验摘录 · 机器翻译

我支持帶前綴的id

我支持使用前缀的ID。如果你使用过Stripe API,你就知道所有客户ID都以`cus_`开头,所有产品ID都以`price_`开头等,这有多方便。我希望在PostgreSQL中也能这样,这样每次看到ID时,你就能知道你处理的是哪种实体。这对于处理数据分析师以及从日志/崩溃转储中调试生产问题将非常有用。你甚至不需要存储这些前缀,它们可以作为列的元数据的一部分,但在将数据发送回客户端之前会加上前缀。我可以在ORM层实现这一点,但根据我的经验,即使使用最强大的ORM,你通常也必须使用原始SQL。此外,人们可能有多种方式访问同一个数据库或只读副本。

源讨论我期望在PostgreSQL中具有的功能原帖 279 条评论 · 导入时统计
3

社区评论 0

还没有社区评论,来聊聊你的看法。

原讨论中的回复 3

仅展示本次导入中包含的直接回复。中文为机器翻译,可查看英文原文。

JR

你可以用数字来实现这一点。客户从1开始,产品从2开始,等等。如果你目标很小的话,这会有点烦人(产品是200-299,但现在你有了第101个产品),或者在设计这个方案时没有意识到你需要添加第10个实体(或第100个),但它基本上是可行的。

完整原文
AN

我也想要这个。 Postgres允许你用C或其他系统编程语言编写自定义数据类型。唯一的限制是“类型修饰符”,在这种情况下是前缀,需要能放进一个“非负整数”中,因此原则上使用例如每个字符5位,你可以将最多6个小写字母、`-`、`_`等放入前缀中。当然,如果这个自定义扩展没有进入AWS RDS等云服务,它的实用价值就会有限。

完整原文
MI

我以前参与过一个数据库,它就是这样做的。这阻止了可以跨多个对象/表工作的通用代码的编写。这带来的工作量比它防止的错误还要多。

完整原文
在 Hacker News 阅读

尊重不同观点,分享具体经验。

登录后即可发帖、评论、转发和引用。