Oracle中 ORA-12704:字符集不匹配


前言

  在使用Union all連接時,若A集合中某列為nvarchar2或nvarchar類型,而B集合中無此列,用‘ ’ 來代替是會報字符集不匹配

1 select '中國','China',cast('中國' as nvarchar2(10)) T 2 from dual 3 union all 4 select '美國','USA','' 
5 from dual;

 

解決方法

  1、to_char()

  

1 select '中國','China',to_char(cast('中國' as nvarchar2(10))) T 2 from dual 3 union all 4 select '美國','USA','' 
5 from dual;

  2、 用N' ',N''是將‘’轉換為Unicode編碼

1 select '中國','China',cast('中國' as nvarchar2(10)) T 2 from dual 3 union all 4 select '美國','USA',N'' 
5 from dual;

 


免責聲明!

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



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