恢复后 postgresql 串行 pk 恢复为整数

postgresql serial pk reverts to integer after restore

我为 pks 构建了一个串行类型的数据库,我迁移到另一台服务器并且 pk 列现在是整数,结果由于 pk 的非空限制我无法添加新数据。有没有可以解决这个问题的 Alter 命令?

SERIAL 不是 postgresql 中的数据类型,只是创建 table 时的一个方便词,它使列成为整数类型并添加 auto-incrementing。您所要做的就是将 auto-incrementing(一个序列)添加回该列,并确保其下一个值大于 table 中的任何值。

This question covers adding serial to an existing column

This answer explains how to reset the counter