【发布时间】:2013-08-25 17:17:27
【问题描述】:
我有一个带有 SERIAL id 的 postgres 表。
id (serial) name age
插入通常发生在 Web 应用程序中。
我手动插入了两条新记录,将 id 设置为 max (id)+1****
在这 2 条插入之后,当网络应用插入 2 条记录时,它会给出重复键错误。
仅 2 条记录。之后一切正常。
问题是 - 为什么我的手动插入没有增加序列号?
自增和序列有区别吗?
我在这里缺少什么? MySQL 或任何其他 SQL 是否有同样的问题?
【问题讨论】:
-
序列号是 PostgreSQL,这是一个自动递增的四字节整数,如果 id 是序列号,则不应生成自己的数字。在 MySQL 中,这或多或少是一个 AUTO_INCREMENT 列..
标签: mysql sql postgresql auto-increment