一. varchar2(10)和number應該轉換為什么類型?
oracle轉成mysql時:
varchar2(10)可以轉成varchar(10)
number則要看oracle中存儲的具體是什么類型的數據:
1、如果是整型,那么mysql中,用int即可;
2、如果是帶小數位的,那么mysql中可用numeric類型。
注:mysql中沒有varchar2(10)和number這兩個數據類型
二. Mysql varchar VS Oracle varchar2
mysql和oracle做數據同步。其中表的一個字段在mysql中設置為varchar(6),Oracle中為varchar2(6)
但mysql中能正常存放的數據同步到oracle中卻抱ORA-12899: value too large for column錯誤。
這是為什么呢?
mysql中varchar(6)代表可以存放6個漢字,6個字母,或6個數字。
oracle中varchar2(6)代表可以中存放6個字節。即oracle中varchar2的長度代表字節數而不是字符數。
mysql中一個漢字占三個字節,Oracle中一個漢字占兩個字節。
雖然mysql varchar 和orache varchar2中字段設置相同的長度,但oracle中卻存放不下。