背景:
由于对一个项目进行重构,数据库重新进行了设计,但还要需要把以前的数据迁移到新的数据库中,数据结构发生了一些改变。
因此利用navicat将以前的数据先导到本地数据库的非public模式下,然后利用schema的特性,执行脚本进行老数据的迁移。
在从远程的public导数据到本地的temp模式时,出现了问题,发现某个sequence不存在,但后台记录这个sequence又是存在的,因此一时找不到原因。
分析:
后来查询表结构设计时,发现表的默认值使用了序列,就想到这个序列是默认的public下的,而我们在迁移数据时,迁移的序列是属于temp的,因此出现了问题。
解决:
向这种数据迁移,只涉及到查询操作,因此可以将旧的数据表中的default去掉,就解决了。