我正在将旧数据库迁移到新数据库(mysql => postgres)。
为简单起见,我保留了旧ID,因此id在knex中做了类似的事情
knex("my_table").withSchema("mySchema").insert({
id : old[i].id,
info : old[i].info
})
似乎这样做会取消ID上的postgres auto_inc,因此当我尝试稍后插入时:
knex("my_table").withSchema("mySchema").insert({
info : "information"
})
它将自动将其归因于ID:1.即使由于迁移而已经存在。
我的问题是:我还能保留旧身份证吗?
答案 0 :(得分:2)
请尝试更改分配给my_table.id列的顺序以进行自动递增。
更改它,使其从max(old_id)+1开始
http://www.postgresqltutorial.com/postgresql-serial/
https://www.postgresql.org/docs/9.1/static/sql-altersequence.html