python - 我应该在应用程序中还是在数据库中生成 UUID?

标签 python postgresql performance sqlalchemy uuid

PostgreSQL 将在生产中使用,并且它对 UUID 具有 native 支持。

但是我应该如何处理它们的生成?

目前我使用以下内容:

uuid = Column(UUID, primary_key=True, default=lambda: uuid4().hex)

这样它们就由应用程序生成了。

如果数据库生成它们,性能会得到改善吗?我该如何实现?

最佳答案

uuid 的一大优点是它们可以在客户端生成。

这意味着,例如,您可以创建包含所有发票行的发票,而无需先访问数据库来获取发票 ID。

因此,您不应在数据库中生成它,除非您使用将数据插入多个表中的存储过程来这样做。

关于python - 我应该在应用程序中还是在数据库中生成 UUID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45555054/

相关文章:

python - "walrus operator"赋值的多个条件

python - TypeError:列表索引必须是整数,而不是尝试更改数组列表的某些元素时的元组

python - 通过在 Python 中删除旧条形图来用新条形图替换现有条形图

SQL配对相邻行

postgresql - PostGIS SQL 从一组具有不同 ID 的点生成单独的线段

.net - Advantage 数据库服务器 INSERT/UPDATE 查询性能问题

python - 为什么Python属性不设置属性值

hibernate - JDBC 准备语句 : How to add a Composite Type

python - 计算大矩阵特征值的最快方法

java - LWJGL - 循环卡住的原因?