PostgresQL nextval 函数的伪代码

Pseudocode of PostgresSQL nextval function

我目前正在为 postgresql 插入 id 使用 nextval() 函数,但现在我想在 python 中实现此函数以生成稍后将插入到 postgresql 中的 id。知道这个函数的伪代码是什么,或者在 python 中。 提前致谢

查看 src/backend/commands/sequence.c 中的 nextval_internal

本质上,您锁定对象以防止并发访问,然后根据序列定义递增或递减,解锁对象和 return 新值。

困难的部分是有效地保留此修改,这样您就可以确保在应用程序崩溃时不会处理重复值。

数据库特别擅长高效可靠地保存此数据,因此您最好使用数据库序列,而不是试图re-invent 控制轮子。