PLSQL |转换函数
PL/SQL 中的字符串实际上是一个带有可选大小规范的字符序列。
字符可以是数字、字母、空白、特殊字符或所有字符的组合。
PLSQL 中的 CONVERT函数用于将字符串从一个字符集转换为另一个字符集。
通常,目标字符集包含源字符集中定义的所有字符的表示。
如果在任何情况下,目标字符集中不存在字符,则会出现替换字符。这些替换字符可以定义为字符集定义的一部分。
句法:
CONVERT( string1, char_set_to [, char_set_from] )
使用的参数 –
- 字符串 1 –
它用于指定要转换的字符串。它可以是任何数据类型 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