如何解决为拆分表创建串行主键
我有具有相同架构的存档表和生产表。
生产有新数据,存档有旧数据。
我想将 id
添加到它们中作为串行引物密钥。
在两个表中我都有数据。
我的想法是在存档表中创建 id。
alter table people add column id serial primary key;
然后在我的生产表中做同样的事情。
生产是归档表的延续,所以 primery key
也应该是它的延续。
所以我用了:
alter sequence people_id_seq restart with 40;
我唯一的问题是此推荐不更新索引。仅为新插入设置起始值。 所以我应该先运行
UPDATE people set id = id + 40;
以及所有行(在存档和生产中)的值的集合序列。
alter sequence people_id_seq restart with (40 + select count(*) from people);
我有一些用于此过程的表(存档和生产中的行数不同),因此我正在为此寻找最自动化的解决方案。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。