【发布时间】:2015-06-04 21:34:53
【问题描述】:
如果我正确理解SERIAL 类型,如果没有为每个INSERT 语句指定值,它会自动递增。我想知道是否可以为每组INSERTs 甚至每笔交易应用一次自动增量。
例如如果我在每个插入之后执行 3 次插入,我会在 SERIAL 列中得到 1,2,3。我想创建具有 3 个插入的单个事务并增加受影响的行,最后在这些行的 SERIAL 列中以 1,1,1 结束。如果我再这样做,我会得到2,2,2 而不是4,5,6
【问题讨论】:
-
不能使用串行列。您可以创建一个“常规”序列,然后在事务开始时查询
nextval()的序列,然后在该事务期间的所有插入中使用currval()。 -
啊,我也很怀疑,但感谢您确认这一点。
标签: postgresql