从DB2数据库到Mysql数据库移植数据

由于前一阵,需求要求把项目数据从DB2移植到mysql,由我来做,我就尝试了一下。其中遇到了几个问题和一些心得记录如下:

我做的方式比较笨了,如果有谁有更好的方式,希望不吝赐教。

 

方式1:利用UE编辑器,手工移植。

首先,打开DB2控制台,查询要进行移植的表所有数据(当然我移植的表数据不算很多,一个表几千条)。

从DB2数据库到Mysql数据库移植数据

然后,利用所选项——导出,视图数据到指定目录,得到表数据,其中列界定符选择",",字符串界定符选择""",这样导出的数据内容如下:



从DB2数据库到Mysql数据库移植数据

通过UE的列编辑模式和全文替换功能,可以很快的编辑成如下SQL语句:


从DB2数据库到Mysql数据库移植数据

最后,在MySql中执行这条语句就可以完成数据的移植。如果遇到类型不匹配的情况,另行手工处理。
 
 方式2:利用Sql拼接Insert字符串。

 

执行如下语句:
select 'insert into `dbname`.`tablename`values
("id","'||name||'","'||pass||'","age");' from DB2INST1.FLEX_USER;

执行结果如下:


从DB2数据库到Mysql数据库移植数据

然后利用所选项——导出,选择字符串定界符为无,则导出的文件内容如下:


从DB2数据库到Mysql数据库移植数据
 这样,一批插入语句就自动生成了,当然,如果遇到类型不一致,在拼接时可以利用转换函数处理一下。

例如:

char()
CAST( 某列 AS CHAR)

等等。

 

 

你可能感兴趣的:(sql,mysql,db2,Flex)