为拆分表创建串行主键

问题描述

我有具有相同架构的存档表和生产表。 生产有新数据,存档有旧数据。 我想将 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 (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...