1.首先将oracle数据库转化成MySql数据库,可以使用 Navicat工具来进行转换
具体的步骤:
(1) 工具 ----->数据传输------>选择源数据库、模式(就是数据库的用户,选择之后就能将这个用户下的表显示出来)、选择要导出的表
------>选择目标数据库-------->点击开始 进度在下面显示 成功后显示导入成功。。。。。。
(2) 在导入数据和表时,我遇到的一些问题:
(1) Navicat连接Oracle数据库时,连接不上报错,报ORA-12737: Instant Client Light: unsupported server character set CHS16GBK
解决方案:找到oralce数据库中的oci.dll orannzsbb11.dll oraocci11.dll 这三个文件,将Navicat中 工具——>选项----->OC里面的这三个文件替换成
Oracle数据库的这三个文件,之后重新启动Navicat即可(Oracle数据的三个文件的存放位置:D:\app\yangruidong\product\11.1.0\db_1\BIN)
(2) 用navicat数据传输时报 MySQL server has gone away With statement
解决方案:找到目标数据库(MySql数据库),工具 ----->服务器监控 ------>选择MySQL数据库 ----->选择 “变量”,找到 “max_allowed_packet”
变量值设置为 999999999 即可。
2.Oracle数据库与MySql数据库中日期的转换:
date_format(date,'%Y-%m-%d') -------------->oracle中的to_char(date,'yyyy-MM-dd');
str_to_date(date,'%Y-%m-%d') -------------->oracle中的to_date(date,'yyyy-MM-dd'); %Y:代表4位的年份 %y:代表2为的年份 %m:代表月, 格式为(01……12) %c:代表月, 格式为(1……12) %d:代表月份中的天数,格式为(00……31) %e:代表月份中的天数, 格式为(0……31) %H:代表小时,格式为(00……23) %k:代表小时,格式为(0……23) %h: 代表小时,格式为(01……12) %I: 代表小时,格式为(01……12) %l :代表小时,格式为(1……12) %i: 代表分钟, 格式为(00……59) %r:代表时间,格式为12 小时(hh:mm:ss [AP]M) %T:代表时间,格式为24 小时(hh:mm:ss) %S:代表秒,格式为(00……59) %s:代表秒,格式为(00……59)