文档章节

ORACLE数据库汉字占用字节数

vvvvvvvv
 vvvvvvvv
发布于 2013/09/26 09:45
字数 296
阅读 263
收藏 7
    之前本人认为一个汉字都是占两个字节的,MSSQL Server如此(至少在我的理解范围之内,如果有误还请大家纠正)。但是最近在使用Oracle数据库,发现了一些特殊的东西,那就是,当你用两个函数(分别是length和lengthb,这两个函数到底是干什么用的,我想不需要我说明,大家查帮助就可以了)进行查询时,发现结果是lengthb是length的三倍(当然前提是length函数中的参数都是汉字了),这就奇怪了,不是说汉字占两个字节吗?怎么这里变成了三个?

      于是上网找资料,还真被我找到了。

     这个其实和Oracle的配置是相关的,用以下语句查询:

SELECT * FROM V$NLS_PARAMETERS T WHERE T.PARAMETER = 'NLS_CHARACTERSET';

可以查询到当前数据库的字符集,如果value=ZHS16GBK,那么一个汉字占用2个字节,如果value=AL32UTF8,那么一个汉字占用3个字节。

 

于是查询了一下本人的数据库,字符集果然是AL32UTF8(这是Oracle数据库默认的)。

© 著作权归作者所有

共有 人打赏支持
vvvvvvvv
粉丝 3
博文 46
码字总数 13826
作品 0
青浦
MySQL CHAR和VARCHAR那些事

我们知道CHAR(M)和VARCHAR(M)的区别就是VARCHAR(M)是变长的字符串,而CHAR(M)是定长的字符串。我们暂时先不考虑变长和定长的问题,我们先来看一看CHAR(M)和VARCHAR(M)中的M代表的是什么意思。...

trayvon
2015/11/17
0
0
Oracle中char,varchar,varchar2,nvarchar,nvarchar2的区别

一、概述 1.char char的长度是固定的,比如说,你定义了char(20),即使你你插入abc,不足二十个字节,数据库也会在abc后面自动加上17个空格,以补足二十个字节; char是区分中英文的,中文在c...

MiniBu
2014/06/23
0
0
Oracle中varchar、varchar2和nvarchar、nvarchar2

在设计Oracle数据库的时候需要为字段选取类型。对数据库中的varchar、varchar2和nvarchar、nvarchar2这几种数据类型一直不知道怎么选取。 varchar和varchar2: Oracle中varchar和varchar2的区...

王子城
08/31
0
0
Oracle 中的 sql语句

1、 上面的语句不能使用 来查找(当数据库中isKeepOnPBS存在1,0,null三种情况时),否则null值的查不出来,<>和!=都是不等于,都可以使用 2、 3、 4、查询当天的记录 5、sql查询当前时间 6、...

土龙
2014/10/18
0
0
MySql与Orcale互换的时候,注意区别

1、字符类型比较 mysql和oracle做数据同步。其中表的一个字段在mysql中设置为varchar(6),Oracle中为varchar2(6) 但mysql中能正常存放的数据同步到oracle中却抱ORA-12899: value too large fo...

CurtainRight
2016/01/06
152
1

没有更多内容

加载失败,请刷新页面

加载更多

win32截屏并rgb24转yuv420

//最终f的内存布局为BGRA格式,需要保证buf长度足够(>w*h*4)void ScreenCap(void* buf, int w, int h){ HWND hDesk = GetDesktopWindow(); HDC hScreen = GetDC(hDesk); ......

styleman
46分钟前
1
0
php输出mysql取出的中文为??的问题

解决方法: @ $db=new mysqli(DB_HOST,DB_USER,DB_PASSWORD,DB_DB); $db->query("set names utf8");//添加此语句,可以解决问题...

Aomo
57分钟前
1
2
白话SpringCloud | 第五章:服务容错保护(Hystrix)

前言 前一章节,我们知道了如何利用RestTemplate+Ribbon和Feign的方式进行服务的调用。在微服务架构中,一个服务可能会调用很多的其他微服务应用,虽然做了多集群部署,但可能还会存在诸如网...

oKong
今天
2
0
【解惑】领略Java内部类的“内部”

内部类有两种情况: (1) 在类中定义一个类(私有内部类,静态内部类) (2) 在方法中定义一个类(局部内部类,匿名内部类) 1、私有内部类 —— 在方法之间定义的内部类,非静态 我们首先看看类中...

偶尔诗文
今天
1
0
sqlserver 2008 r2 直接下载地址(百度云)

之前下载的sqlserver2008发现不能附加,就卸载了,重新找到了sqlserver2008R2的百度云资源 卸载sqlserver2008还是有点麻烦,不过就是需要删除注册表中的信息 自己来回卸载了3次终于重装sqlse...

dillonxiao
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部