Bootstrap

postgresql不同schema下的数据迁移

背景:

由于对一个项目进行重构,数据库重新进行了设计,但还要需要把以前的数据迁移到新的数据库中,数据结构发生了一些改变。

因此利用navicat将以前的数据先导到本地数据库的非public模式下,然后利用schema的特性,执行脚本进行老数据的迁移。

在从远程的public导数据到本地的temp模式时,出现了问题,发现某个sequence不存在,但后台记录这个sequence又是存在的,因此一时找不到原因。

分析:

后来查询表结构设计时,发现表的默认值使用了序列,就想到这个序列是默认的public下的,而我们在迁移数据时,迁移的序列是属于temp的,因此出现了问题。


解决:

向这种数据迁移,只涉及到查询操作,因此可以将旧的数据表中的default去掉,就解决了。

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;