2010-01-13 119 views
0

我想将数据从SQL Server迁移到mysql,并且我想使用insert-statements来做到这一点,所以我修改了Narayana Vyas Kondreddi的this nice script以生成 mysql-友好的代码和一切正常到目前为止。使用插入将数据从SQL Server迁移到mysql

问题是TEXT数据类型的列可能长度超过8000个字符(包含长文本块),并且由于脚本使用varchar(8000)来累积每个脚本 - 当数据到达时我失败长。

对工具有什么好的建议,允许我做类似的事情,或任何建议的解决方案?或者用ado.net编写自己的导出程序更容易..

我试过mysql迁移工具包,并没有得到一个成功的结果。


编辑:我结束了写我自己的刀片式发电机使用ado.net,它可在: my mysql-framework svn如果有人有兴趣。

回答

0

您可以将varchar扩展到65535个字节(MySQL 5.0中时),所以一个简单的办法可能是修改@Actual_Values从纳拉亚纳维亚斯Kondreddi脚本变量定义...

--Variable declarations 
DECLARE  @Column_ID int,   
     @Column_List varchar(8000), 
     @Column_Name varchar(128), 
     @Start_Insert varchar(786), 
     @Data_Type varchar(128), 
     @Actual_Values varchar(65535), --This is the string that will be finally executed to generate INSERT statements 
     @IDN varchar(128)  --Will contain the IDENTITY column's name in the table 
+0

问题是,脚本在mssql(2005)上运行,并且只支持8000个字符。 :/ – possan 2010-01-13 10:38:46

+0

这是一个无赖,对不起,我不能更有帮助 – 2010-01-13 13:26:19

+0

我标记这是解决方案。 – possan 2010-01-13 16:05:29

相关问题