SQL迁移。保留旧ID无效

时间:2018-10-06 10:37:58

标签: mysql sql postgresql knex.js

我正在将旧数据库迁移到新数据库(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.即使由于迁移而已经存在。

我的问题是:我还能保留旧身份证吗?

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