次文章主要向大家介绍的是将MSSQL数据转换到MySQL数据库的时机操作方法(MSSQLMYSQL) 对于这个问题了很早就有想解决的年头了但是到现在还不能算是解决但至少先把我斗争到现在的可行的方法以及我尝试过的方法列举出来
最早使用的应该是DBConvert for MSSQL and MySQL工具但不知道为什么就是无法连接我的MSSQL可能是的原因吧链接好像是很OK的因为我测试连接虚拟主机的MSSQL完全正常链接本机的MSSQL失败没有办法只好放弃
然后继续找方法发现一个问题是我查找所有的中文的资料(就是Google查找出来的中文网页)都没有给我太好的结果最好只好用英文关键字查找
convert mssql to mysql竟然第一条就是MYSQL数据库官方的网页进去浏览后发现很不错基本上能够解决我的问题并提出了五种方法我查找的中文网页基本上是让我通过ODBC工具来解决的即使给出代码之类也没有好用的代码罢真是差距
简单读来文章中提出了五种方法分别如下(其实这个网页的标题也不是MSSQLMYSQL数据库所以有五种方法也应该理解原文链接Migrating from Microsoft SQL Server and Access to MySQL)
MSSQLMYSQL
Microsoft DTS
SQLyog
Access Export
Text Import/Export
以上的几种转换我想都应该要用到ODBC for MYSQL的工具吧所以请大家先自行下载安装并重启电脑后再使用以上的方法
Microsoft DTS应该算是MSSQL自带的导入导出工具吧在导入导出ACCESS和文本等方面MSSQL还是很不错的不过我在MSSQL的导入导出工具中竟然没有找到ODBC够晕难道没有?看来还需要查查文档
而Access Export就是Access的导出工具导出的时候选择ODBC当然也需要先配置好MYSQL的ODBC参数才好进行
SQLyog是一个MYSQL的管理工具吧由于懒得下载所以也没有测试
Text Import/Export这个我在phpMyAdmin工具中导入文本文件即可这可能比较适合小量的数据对于大量的工具我想就不是很方便了
MSSQLMYSQL是一个VB类的代码全部的代码请参见此页将这个代码复制到VBA或者VB的类模块中按照说明设置好参数运行即开始了数据的转换过程这里有一点值得注意的是由于不同的数据库引擎使用的字段的类型是不一样的所以涉及到字段类型转换不过这份代码已经解决了这份问题所以不用考虑数据转换不过我也就基本的数据类型永不到image等等类型所以我想有没有和我关系不大
我打开VB真的设置了参数运行了一遍可以通过本来准备写成工具的结果发现人家本来就提供了第三方的GUI工具唉早知道我就直接下GUI工具就可以了不必那么累让自己动手一遍
OK下面有一个GUI versions的部分这里提供了两个MSSQLMYSQL的GUI工具这两个工具都是比较简单我简单的说一下参数MSSQL和MYSQL数据库的链接参数我想都会的那个drop database参数大概是说在转换前先删除MYSQL中的该数据库然后再做转换就是为了干净嘛所以如果转换到已经存在的数据库中的话就需要注意了verbosity其实就是output选项是转换到数据库呢还是输出为SQL文件呢?
为输出文件为直接导入到MYSQL其余没有什么好说的字符编码一般我想也都用UTF吧其余就自己琢磨吧
关于MSSQLMYSQL的效率真是让我大失所望可以说虽然找到了这样的方法但是真正的转换不仅仅是痛苦上面的MSSQLMYSQL代码转换方法效率大概是小时条记录而使用Access Export好像也没有快多少要知道我万条记录那要我转换到猴年马月?疯掉
看来还得想其他办法不过话又说回来我将万条记录使用BCP映射的方法导入到SQL SERVER中大概也要半个多小时而使用SQL SERVER的导出功能将数据库导出为ACCESS时间也不短最后等的没有耐心只好开着电脑就去睡觉了
这大概就是我现阶段所尝试的MSSQLMYSQL数据库的方法吧如果有朋友有更好更快的方法请务必告知一声谢谢更新有可能会提示无法连接MYSQL此部分可能和你装的MYSQL ODBC有关系因为默认的设置文字好像有问题我把ODBC版本设置为MySQL ODBC Driver这样就可以连接了可能新版本的MYSQL ODBC已经有所更新而代码中还是旧版本的所以不支持吧