起因:相同数据,供述厂家不同,使用正则匹配时,不同厂家的数据匹配不到。
描述:导致此问题的发生原因为“数据编码不一致”,如果仅凭肉眼壕无差异。此时需用Convert函数查看数据编码,会发现不同厂家的相同数据转换出来的编码是不一致的。
附转码函数使用方式:
在oracle中,convert函数是用来转字符集转换的。
语法:CONVERT( char,dest_char_set [,source_char_set] );
参数说明
|
char
要转换的值。它可以是任何的数据类型 。
dest_char_set
要转换的字符集的名称。utf8,US7ASCII,ZHS16GBK
source_char_set
储在数据库中的字符集,可以不写,默认值是数据库的字符集。
?
?
oracle sql如何把us7ascii的字符串编码转换为utf8或者gb2312编码
? ? ? ? 用CONVERT(char,source_char_set] )函数
windows 可以直接修改 HKEY_LOCAL_MACHINESOFTWAREORACLEKEY_OraDb10g_home1 nls_lang
值为 SIMPLIFIED CHINESE_CHINA.ZHS16GBK 或使用convert 函数Eg. convert(char,‘ZHS16GBK‘,‘UTF8‘)
SQL code SQL> select CONVERT(datatype,‘US7ASCII‘ ) from BSTH_SYS_FIELD_ALIAS; CONVERT(DATATYPE,‘US7ASCII‘)
--------------------------------------------------------------------------------
gfdfghdf
??
SQL> select CONVERT(datatype,‘ZHS16GBK‘ ) from BSTH_SYS_FIELD_ALIAS; CONVERT(DATATYPE,‘ZHS16GBK‘)
--------------------------------------------------------------------------------
gfdfghdf
中文 ASCII 返回与指定的字符对应的十进制数;
SQL> select ascii(A) A,ascii(a) a,ascii(0) zero,ascii( ) space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32 CHR
给出整数,返回对应的字符;
SQL> select chr(54740) zhao,chr(65) chr65 from dual;
ZH C
-- -
赵 A
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!