navicat导旧数据到新表
在项目中有个需求,由于旧项目的旧表一直没有更新,且由于之前没有对更新表的操作进行记录,无法通过sql文件进行表的更新…
问题:
将旧表的数据导入到新表中(新旧表结构不大一样),这就不能直接导出数据与结构文件然后直接执行了。
解决:
在这里我使用的是navicat premium
这个工具
- 先将新表的结构导出,然后在目标库中执行生成对应的空表
- 用旧表
导出向导
(注意导出格式为sql
,并且要记录列) - 右键目标库运行sql文件(向导sql文件),实现旧数据的导入(选择出错时停止,查看是哪里插入失败了)
ps:
可能新表中会删除掉旧表的某些字段或者新建了唯一索引等情况导致旧数据导入的失败,可以先修改下目标表的结构,成功导入数据后再做处理。(需求不同因人而异)