目前在工作中遇到一个问题,需要将一个网站的文章数据导入到另外一个网站的数据库去,说白了就是要把一个网站的文章弄到另外一个网站去显示。作为一个小小前端,很少接触数据库,只能摸着石头过河,下面记录一下捣鼓过程。
两个网站的数据库都是MySQL,但数据结构都是不一样的,存文章的表结构也不一样:
网站1的文章分别存在两张表里的:
biao1_body.sql 中的body字段存的是文章内容
biao2_title.sql 中的title字段存的是文章标题
biao1的aid字段与biao2的id字段相对应。
网站2的文章存在一张表biao3_post.sql里的,包含有body和title两个字段。
我的需求是把表1里的body字段所有内容和表2title字段所有内容都弄到表3里去。
遇到的坑:
我直接把表1和表2导出为MS Access数据库(*.mdb)这种数据格式,然后再将导出的.mdb文件导入到biao3中去。
数据是导入到表3里了,但是原来的文章的标题和文章内容的对应关系确没有了。这不是我想要的。
于是只好放弃这种方案。
第二种方案:
经过上面踩的坑,于是想到能不能先把表1和表2的两个字段合并到一起并且对应,这个用sql语句是可以实现的:
合并之后的结果是biao1_body.sql这个表里面既有body字段又新增了title字段并且对应了。
注意要先在表1里手动添加一个title字段,不然这条sql语句执行不成功。
ok,接下来将这个合并后的表1导出为.mdb文件,再将这个.mdb文件导入到表3里,此时表3里已经新增了文章数据,而表3原来的数据没有改变,大功告成!
做完之后始终觉得这不是最好的办法,还有一些其他的小问题,比如表3里新增的这部分数据的其他字段都是空白的。
毕竟不是专业的,也只能这样了,各位大神如果有更好的办法不妨来分享一下。。