12

Navicat转换mysql到oracle

2019-02-03 15:39:00    1147533288    4990    原创

亲测mysql5.7到oracle11g转换。

1.Navicat连接Oracle时报错ORA-28547怎么办


配置navicat中的option->oci设置oracle客户端目录,重启navicate解决。

2.navicate菜单->工具->数据传输。配置好源数据库和目标模式,设置参数,开始转换。


采坑补充20190206:

注1:大写输出,否则表名,字段名带引号

注2:mysql字段中的varchar 2000被转换成了NCLOB。。。。。。。


注2解决办法(加字段,更新数据,删除字段,改名字段。。。。。。):

--create table st as select table_name,column_name,data_type,data_length from user_tab_columns where data_type='NCLOB';
select 'alter table '||table_name||' add '||column_name||'_VAR NVARCHAR2(2000);' from st;
select 'update '||table_name||' set '||column_name||'_VAR=DBMS_LOB.SUBSTR('||column_name||',2000);' from st;
select 'alter table '||table_name||' drop column '||column_name||';' from st;
select 'alter table '||table_name||' rename column '||column_name||'_VAR to '||column_name||';' from st;



苏ICP备18038013号-1
蝉知 蝉知5.2