oracle中nvarchar2字符集不匹配问题 -凯发k8官方网
凯发k8官方网
收集整理的这篇文章主要介绍了
oracle中nvarchar2字符集不匹配问题
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
oracle中在做字符匹配时 遇到 nvarchar2 类型时报错,提示 字符集不匹配。
对使用 nvarchar2 的地方,需要对字段进行字符转换,加上 to_char(nvarchar2 字段) 即可。
例如:
select substr(bm.matnr, 3) wlbm, ms.maktx wlms, bm.meins jldw, bm.matkl wlz
, bm.normt gybzms,bm.laeda gxsj,(case to_char(trim(bm.lvorm)) when 'x' then '0' else '1' end) wlzt
from makt ms, mara bm
where ms.matnr = bm.matnr;
varchar2是oracle提供的特定数据类型,oracle可以保证varchar2在任何版本中该数据类型都可以向上和向下兼容。
varchar在oracle中不建议使用。
nvarchar2和varchar2的区别:
从使用角度来看区别在于:nvarchar2在计算长度时和字符集相关的,例如数据库是中文字符集时以长度10为例,则
1、nvarchar2(10)是可以存进去10个汉字的,如果用来存英文也只能存10个字符。
2、而varchar2(10)的话,则只能存进5个汉字,英文则可以存10个。
总结
以上是凯发k8官方网为你收集整理的oracle中nvarchar2字符集不匹配问题的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: