[转帖]Oracle中unicode的几种不同字符编码模式
https://zhuanlan.zhihu.com/p/668340691#
在Oracle中unicode字符集中,存在以下几种不同unicode字符集的编码模式
- AL32UTF8
- UTF8
- AL16UTF16
- UTF-16BE
- UTF-16LE
下面讲一下它们的在Oracle一般都用在哪里以及有哪些限制?
| 字符编码方式 | 描述 |
|---|---|
| AL32UTF8(重点) | 1、该字符编码模式是对UTF-8标准的实现,其为变长字符宽度,1~4个字节,包含了unicode字符集中补充字符(4字节); 2、通常在CREATE DATABASE时指定参数CHARACTER SET AL32UTF8作为该数据库字符集,该设定会将该数据库中char、varchar2、clob数据类型字段存储的字符编码为AL32UTF8。 3、兼容ASCII字符集,都是用1字节表示。 |
| UTF8(已弃用) | Oracle中该字符编码模式已被弃用。该字符编码并不是对UTF-8的标准实现,而是CESU-8的实现,其为变长字符宽度,字符宽度1~3个字节,不包含unicode字符集中的4字节补充字符。 |
| AL16UTF16(重点) | 1、该字符编码是用UTF-16BE(大端存储)存储模式实现标准的UTF-16,每个字符占用2或4字节存储,包含了unicode字符集中的补充字符(4字节); 2、该编码模式主要是用于CREATE DATABASE时指定参数 NATIONAL CHARACTER SET(国家字符集)AL16UTF16,该设定会将该数据库中nchar、nvarchar2、nclob数据类型字段的字符编码为AL16UTF16。 3、该字符集不能作为数据库字符集,也就是说CREATE DATABASE时指定参数CHARACTER SET AL16UTF16不支持。 4、不兼容ASCII字符集,用2字节表示ASCII中的字符。 |
| UTF-16BE(了解) | AL16UTF16的具体编码模式实现,即大端存储方式。不直接在Oracle中使用。 |
| UTF-16LE(了解) | UTF16小端编码模式实现,它是一个仅用于转换的字符编码模式,仅在SQL CONVERT或PL/SQL UTL_I18N.STRING_TO_RAW等字符集转换函数中有效。不直接在Oracle中使用。 |
[转帖]Oracle中unicode的几种不同字符编码模式的更多相关文章
- ORACLE中常见的几种锁
ORACLE中常见的几种锁: 0:none 1:null 空 2:Row-S 行共享(RS):共享表锁,sub share 3:Row-X 行独占(RX):用于行的修改,sub exclusive 4 ...
- [转]Oracle中trace的几种
Oracle中trace的几种 标签: 杂谈 我们在Oracle中在做troubleshooting的时候,经常要去做跟踪来查错,那今天就介绍几种trace的方法. 在这之前,我先说说10046事 ...
- 在oracle中,group by后将字符拼接,以及自定义排序
1.在oracle中,group by后将字符拼接.任务:在学生表中,有studentid和subject两个字段.要求对studentid进行group by分组,并将所选科目拼接在一起.oracl ...
- ASCII、Unicode、GBK和UTF-8字符编码的区别联系(转载)
ASCII.Unicode.GBK和UTF-8字符编码的区别联系 转载自:http://dengo.org/archives/901 很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同 ...
- ASCII、Unicode、GBK和UTF-8字符编码的区别联系
转自http://dengo.org/archives/901 很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们看到8个开关状态是好的,于是他们把这称 ...
- ASCII、Unicode、GBK和UTF-8字符编码的区别联系[转]
http://dengo.org/archives/901 这是我看过的最好的一篇讲述编码的文章 很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们看到 ...
- 浅析ASCII、Unicode和UTF-8三种常见字符编码
什么是字符编码? 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255( ...
- ASCII,Unicode,GBK和UTF-8字符编码的区别和联系
如果经常写python2,肯定会遇到各种“奇怪”的字符编码问题,每次都通过谷歌解决了,但是为什么会造成这种乱码.decode/encode失败等等,本文就字符和字符编码做一个总结,更加清晰区分诸多的编 ...
- MFC中的乱起八糟----字符编码:LPTSTR,LPCTSTR, TCHAR等
注意,编写有 Unicode 意识的代码总是一件好事,比如: CString graycat = CString(_T("Gray")) + _T("Cat") ...
- Python中的数据类型、变量、字符编码、输入输出、注释
数据类型 number(数字) 用于存储类型,通常分为int.long.float.complex: int:32位机器上占32位,取值范围为-231 ~ 231 - 1:64位机器上占64位,取值范 ...
随机推荐
- 春秋云镜 - CVE-2022-28512
Fantastic Blog (CMS)是一个绝对出色的博客/文章网络内容管理系统.它使您可以轻松地管理您的网站或博客,它为您提供了广泛的功能来定制您的博客以满足您的需求.它具有强大的功能,您无需接触 ...
- 通过 KernelUtil 截取 QQ / TIM 客户端 ClientKey 详细教程
前言 众所周知,由于最新版本 QQ 9.7.20 已经不能通过模拟网页快捷登录来截取 Clientkey,估计是针对访问的程序做了限制,然而经过多方面测试,诸多的地区.环境.机器也针对这种获取方法做了 ...
- flutter BLoC框架
BLoC(Business Logic Component)是一种在Flutter中用于管理状态和处理业务逻辑的设计模式和架构模式. BLoC 的核心思想是将应用程序的状态.业务逻辑和UI分离开来,以 ...
- vue 遍历的汉字显示不同的颜色
<template> <div> <div class="stars"> <span v-for="(star, index) ...
- Llama2-Chinese项目:6-模型评测
测试问题筛选自AtomBulb[1],共95个测试问题,包含:通用知识.语言理解.创作能力.逻辑推理.代码编程.工作技能.使用工具.人格特征八个大的类别. 1.测试中的Prompt 例如对于问 ...
- Python压缩JS文件,重点是 slimit
摘要:Python Web程序员必看系列,学习如何压缩 JS 代码. 本文分享自华为云社区<Python压缩JS文件,PythonWeb程序员必看系列,重点是 slimit>,作者: 梦想 ...
- 构建万物互联,华为云IoT+鸿蒙重燃物体感知
摘要:鸿蒙的出现,让硬件.软件行业面临着变革与重构的洪流,但激流勇进中,也潜藏着巨大机遇.物联网设备与鸿蒙结合成为必然趋势,本文将解读华为云IoT+鸿蒙如何强强联合,为物联网行业提供新的思路和方法. ...
- 软件界旷世之架:测试驱动开发(TDD)之争
摘要:在软件行业中,神仙打架的名场面,那就不得不提的是2014年的那场--测试驱动开发(TDD)之争. 在历史上有很多精彩绝伦的神仙打架,比如数学界的牛顿和莱布尼茨关于微积分的旷世之争:比如量子物理中 ...
- 云图说|移动应用安全服务—App的体检中心,全面检测,安全上路!
阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要: 移动应用安全服务 ...
- openGemini内核源码正式对外开源
摘要:openGemini是一个开源的分布式时序数据库系统,可广泛应用于物联网.车联网.运维监控.工业互联网等业务场景,具备卓越的读写性能和高效的数据分析能力. 本文分享自华为云社区<华为云面向 ...