1、 扫描件表数据转移过程中出现数据量不一致的情况有以下几种情况:
(一) 扫描件本身损坏导致转移不成功;
(二) 存放扫描件内容的 blog 列值为空时,MySQL Migration Toolkit 工具不转移;
(三) Blob 列大于 4M 的不能够成功导入 mysql 中,mysql 上限为 4M;错误信息:ERROR:
The following error occured while transfering binary data from T_CL_SMJ, column C_NR BLOB
is larger than 4MB.
(四) 解 决 方 法 : 用 mysql 的 longblob 代 替 blob , longblob 最 大 长 度 为 4,294,967,295 或
4GB(232-1)字节,而 blob 最大长度为 65,535(216-1)字节。
6, sysdate 用 sysdate()代替;
7,声明变量方式不同:
oracle 为 li_qx int;
mysql 为 declare li_qx int;
8,赋值方式不同:
Oracle 为 result := v_int1||v_int2;
Mysql 为 set result = v_int1 + v_int2;
9, 字符串连接符不同:
Oracle 为 result := v_int1||v_int2;
Mysql 为 set result = concat(v_int1,v_int2);
10,传入参数写法不同:
Oracle 为 gw_id in(out) varchar;in ,out 则必须;
Mysql 为 in(out) gw_id varchar(100); in 可选,out 则必须;
11, 过程和函数的声明变量的位置不同:
Oracle 声明变量在 begin…end 体之前;
Mysql 声明变量在 begin...end 体内,begin 之后其他任何内容之前;
12,数据类型不同,要求转化:
Varchar2(n)-〉varchar;
Date -〉datetime;
13,自带函数对应转化:
Oracle 时间格式:yyyy-MM-dd hh:mi:ss
Mysql 时间格式:%Y-%m-%d %H:%i:%s
时间相加
Oracle:col+180
Mysql:date_add(col, INTERVAL 180 DAY)
instr -> locate(注意:locate 的子串和总串的位置要互换)
如:instr(‘abcdefg’,’ab’) -> locate(‘ab’,’abcdefg’)
number-> numeric
nvl(exp1,exp2)->ifnull(exp1,exp2)
length(str)-> char_length()
to_char(date,format)->date_format(date,’%Y-%m-%d’), 如 :DATE_FORMAT('1997-10-04
22:23:00','%Y-%m-%d');
to_date(str,format)->STR_TO_DATE(str,format)。如: STR_TO_DATE('2004-03-01', '%Y-
%m-%d');
yyyymmddhh24miss-sssss -> %Y%m%d%k%i%s-%f
14、while 语句区别
评论4