oracle官方文档- length篇

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle官方文档- length篇相关的知识,希望对你有一定的参考价值。

首先介绍下 单字节字符集 和  多字节字符集

2.2字符编码方案
2.2.1 单字节编码
    1)单字节7位字符集,可以定义128个字符,最常用的字符集为 US7ASCII
    (2)单字节8位字符集,可以定义256个字符,适合于欧洲大部分国家

    例如:WE8ISO8859P1(西欧、8位、ISO标准8859P1编码 )
2.2.2 多字节编码

    1)变长多字节编码
     某些字符用一个字节表示,其它字符用两个或多个字符表示,变长多字节编码常用于对亚洲语言的支持,   例如日语、汉语、印地语等
    例如:AL32UTF8(其中AL代表ALL,指适用于所有语言)、 zhs16cgb231280
    (2)定长多字节编码

    每一个字符都使用固定长度字节的编码方案,目前oracle唯一支持的定长多字节编码是AF16UTF16,也是仅用于国家字符集
2.2.3 unicode 编码
    Unicode 是一个涵盖了目前全世界使用的所有已知字符的单一编码方案,也就是说Unicode为每一个字符提供唯一的编码。UTF-16是unicode的16位编码方式,是一种定长多字节编码,用2个字节表示一个unicode字符,AF16UTF16是UTF-16编码字符集。
    UTF-8 unicode的8位编码方式,是一种变长多字节编码,这种编码可以用1、2、3个字节表示一个unicode字符,AL32UTF8,UTF8、UTFE是UTF-8编码字符集

 

LENGTH

Syntax

length::=

技术分享
Description of the illustration length.gif

Purpose

The LENGTH functions return the length of char. LENGTH calculates length using characters as defined by the input character set. LENGTHB uses bytes instead of characters. LENGTHC uses Unicode complete characters. LENGTH2 uses UCS2 code points. LENGTH4 uses UCS4 code points.

char can be any of the data types CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, or NCLOB. The exceptions are LENGTHC, LENGTH2, and LENGTH4, which do not allow char to be a CLOB or NCLOB. The return value is of data type NUMBER. If char has data type CHAR, then the length includes all trailing blanks. If char is null, then this function returns null.

Restriction on LENGTHB The LENGTHB function is supported for single-byte LOBs only. It cannot be used with CLOB and NCLOB data in a multibyte character set.

Examples

The following example uses the LENGTH function using a single-byte database character set:

SELECT LENGTH(‘CANDIDE‘) "Length in characters"
  FROM DUAL;

Length in characters
--------------------
                   7

The next example assumes a double-byte database character set.

SELECT LENGTHB (‘CANDIDE‘) "Length in bytes"
  FROM DUAL;
 
Length in bytes
---------------
             14

以上是关于oracle官方文档- length篇的主要内容,如果未能解决你的问题,请参考以下文章

oracle所有的乱码解决方案

将base64编码的图片上传至七牛云

协议文档里要求字符串要用GBK编码

未声明 HTML 文档的字符编码

PL/SQL无法查询过滤中文字段解决方案

Oracle 函数length和lengthb的区别