PL /SQL中的字符串实际上是具有可选大小规格的字符序列。
字符可以是数字,字母,空格,特殊字符或全部的组合。
PLSQL中的CONVERT函数用于将字符串从一个字符集转换为另一个字符集。
通常,目标字符集包含源字符集中定义的所有字符的表示。
无论如何,如果目标字符集中不存在该字符,则会出现替换字符。可以将这些替换字符定义为字符集定义的一部分。
用法:
CONVERT( string1, char_set_to [, char_set_from] )
使用的参数–
string1 –
它用于指定要转换的字符串。它可以是CHAR,VARCHAR2,NCHAR,NVARCHAR2,CLOB或NCLOB的任何数据类型。
char_set_to –
它用于指定需要将字符串转换为的字符集。
char_set_from –
它是一个可选参数,用于指定需要从中转换字符串的字符集。
注意 -目标字符集参数和源字符集参数都可以是文字或包含字符集名称的列。
可用字符集:
US7ASCII:美国7位ASCII字符集
WE8DEC:西欧8位字符集
WE8HP:HP西欧Laserjet 8位字符集
F7DEC:DEC法语7位字符集
WE8EBCDIC500:IBM西欧EBCDIC代码页500
WE8PC850:IBM PC代码页850
WE8ISO8859P1:ISO 8859-1西欧8位字符集
支持的Oracle /PLSQL版本:
甲骨文12c
甲骨文11g
甲骨文10g
甲骨文9i
甲骨文8i
例:
DECLARE
Test_String string(10) := 'A B C D';
Test_String2 string(20) := 'E Ä Ê Í';
BEGIN
dbms_output.put_line(CONVERT(Test_String, 'US7ASCII', 'WE8ISO8859P1'));
dbms_output.put_line(CONVERT(Test_String2, 'US7ASCII'));
END;
输出:
A B C D
E A E I