用达梦数据库迁移工具迁移查询结果

七海恋空 2021-01-20 浏览(0 评论(0

用达梦数据库迁移工具迁移数据有2种模式,一种是用一条或多条查询指定要迁移的数据,一种是从数据源复制对象。说得简单一点就是,一种是迁移查询结果,一种是迁移整个表。

最近在用达梦数据库,遇到了一堆坑,国产软件啊还真是任重而道远!比方说这个达梦数据库迁移工具,配置过程是各种体验差、反人类,迁移过程是各种卡死、闪退,我都无力吐槽了。一开始我用整表迁移,结果有些表创建的时候就报错了,当然有些函数达梦数据库不支持或者换了个方式,这个我能忍,打不了跑sql语句手动创建表。但是有些表迁移的时候,迁移了一半就卡死不动了,也不报错提示,就是一直卡着不动,这东西用着真是让人火大。有些表都迁移了99%了,非等剩下几条迁移失败的,重新迁移也不好使。这个以后再找问题吧。

现在急需解决的问题是,有个表50万条数据,我该怎么迁移?基本上每次迁移七八万就卡死了。难不成让我复制sql语句去执行啊!我看达梦数据库迁移工具还提供根据查询结果进行迁移,这样我可以通过这种迁移模式把一个表分成几十次来迁移。我试了一下,发现一点也不好使,明明最后提示迁移成功了,可表里面没数据啊。直到今天我总算找到问题了。请看下图:

我写好了查询语句,然后点击下一步,来到了选择迁移对象这一步,也就是上图那个界面。然后我就直接点下一步了,结果提示迁移成功了。可我查询我目标数据表里还是一个数据没有,我万万没想到数据迁移到了QUERY1这个表里去了。是的,达梦数据库自己创建了一个QUERY1的表。我们正确的做法应该是双击目的对象,把QUERY1修改成你的目标数据表。这真不是正常人能想出来的操作逻辑啊!我以为源对象不是表名,目的对象自然也不是表名了,而且居然取了一个QUERY1这样的默认表名,我真是服了气了。

总之,在使用达梦数据库迁移工具时,一定要注意源和目标这2个概念,一定要看清楚,并配置正确,因为有时候点击和选择配置的地方非常不显眼,也没有一个向导提示,这样很容易像我一样掉坑里几天爬不出来。