oracle轉Mysql中,varchar2(10)和number應該轉換為什么類型?


一. 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中卻存放不下。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM