恢复后 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
我为 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