Oracle数据库转化成MySql数据库遇到的一些问题

来源:互联网 发布:g代码编程实例 编辑:程序博客网 时间:2024/05/16 06:17

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) 
    


0 0
原创粉丝点击