MySql的.sql文件导入到Oracle 11g
小弟最近实习,有时候会遇到别的人发来的MySql中的.sql文件,让我把这个文件中的数据导入到Oracle中去。
.sql文件用txt文档打开的格式大致如下:
create table XXX(
‘id’ integer not null,
'name' varchar not null,
'age' integer not null
);
insert into XXX values(AAA,BBB,CCC);
insert into XXX values(AAA,BBB,CCC);
insert into XXX values(AAA,BBB,CCC);
...........................(中间有几万,甚至几十万行insert语句)
insert into XXX values(AAA,BBB,CCC);
遇到这种问题,我一般都是先在Oracle中创建一张对应的表,把MySql中的数据类型转为相应的Oracle数据类型,比如varchar转为varchar2等……然后复制、粘贴所有的insert语句到PL/SQL developer中。
不过当遇到insert语句有几十万行的时候,这个效率就会变得……非常非常非常的慢。
我试过先把.sql弄到Mysql中,再使用ETL工具导入到oracle。但发现即便这样,几十万条的insert语句也会耗费很长的时间。
想问一下大家有没有什么好的方法……dmp文件导入就非常快,.sql逐条插入实在太慢了。
新手刚实习不久,没什么经验,在这里感谢各位前辈的指教了~!