Oracle-一个中文汉字占几个字节?
Oracle 一个中文汉字占用几个字节
Oracle 一个中文汉字 占用几个字节,要根据Oracle中字符集编码决定!!!
1. 如果定义为VARCHAR2(32 CHAR),那么该列最多就可以存储32个汉字,如果定义字段为VARCHAR2(32) 或VARCHAR2(32 BYTE)那么它最多可以存储多少个汉字就要视数据库字符集编码决定
***************************************************************
2.ORACLE数据库中文可以存储字节或字符,例如 CHAR(32 BYTE) CHAR(32 CHAR)的意义是不同的.一般来说默认是存储字节,你可以查看数据库参数NLS_LENGTH_SEMANTICS的值
***************************************************************
SQL> show parameter nls_length_semantics;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
nls_length_semantics string BYTE
select userenv('language') from dual;
SIMPLIFIED CHINESE_CHINA.ZHS16GBK : 一个汉字占用两个字节
SIMPLIFIED CHINESE_CHINA.AL32UTF8 : 一个汉字占用三个字节
***************************************************************
3. 求的中文占用多少个字符和多少个字节使用下面的函数.
SQL> SELECT LENGTH('您好') FROM DUAL; --LENGTH函数求得是占用字符数
LENGTH('您好')
--------------
2
SQL> SELECT LENGTHB('您好') FROM DUAL; --LENGTHB或者VSIZE函数求得是占用字节数
LENGTHB('您好')
---------------
6
***************************************************************
4. 前台JS验证输入的字符串长度函数
/**
* yangw
* 字符串长度的统计--中英文的问题
*/
// 由于Oracle中,一个UTF-8编码的汉字占 3个字节 GBK编码的汉字占两个字节
// 成都农商行使用到的数据库编码是 AL32UTF8---故下面替换为3个a
var len= element.value.replace(/[^\x00-\xff]/g,"aaa").length;
if(len>length){
showError(element, "的长度必须小于等于"+length+'字节,中文占三个字节,其它占1个字节', hasFrame);
return false;
}
参考文章: http://www.cnblogs.com/kerrycode/archive/2013/12/10/3466993.html
http://www.linuxidc.com/Linux/2013-03/81732.htm
Oracle-一个中文汉字占几个字节?的更多相关文章
- Oracle一个中文汉字占用几个字节
Oracle 一个中文汉字 占用几个字节,要根据Oracle中字符集编码决定 查看oracle server端字符集 select userenv('language') from dual; 如 ...
- Oracle 一个中文汉字 占用几个字节,由Oracle中字符集编码决定
Oracle 一个中文汉字 占用几个字节,要根据Oracle中字符集编码决定 查看oracle server端字符集 select userenv('language') from dual; 如果显 ...
- 字节数与字符数mysql_mysql里一个中文汉字占多少字节数?
在mysql中,如果是latin1字符集下,一个中文汉字占2个字节数:如果是utf8字符集下,一个中文汉字占3个字节数:如果是gbk字符集下,一个中文汉字占2个字节数. mysql各字符集下汉字和字母 ...
- Java一个汉字占几个字节(详解与原理)
1.先说重点: 不同的编码格式占字节数是不同的,UTF-8编码下一个中文所占字节也是不确定的,可能是2个.3个.4个字节: 2.以下是源码: @Test public void test1() thr ...
- Java一个汉字占几个字节(详解与原理)(转载)
1.先说重点: 不同的编码格式占字节数是不同的,UTF-8编码下一个中文所占字节也是不确定的,可能是2个.3个.4个字节: 2.以下是源码: 1 @Test 2 public void test1() ...
- char 型变量中能不能存贮一个中文汉字,为什么?
char类型可以存储一个中文汉字,因为Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),所以放一个 ...
- 关于java中char占几个字节,汉字占几个字节
我们平常说,java中char占2个字节,可又说汉字在不通的编码格式中所占的位数是不同的,比如gbk中汉字占2个字节,utf8中多数占3个字节,少数占4个.而所有汉字在java程序中我们都可以简单的用 ...
- char 型变量中能不能存贮一个中文汉字?为什么?
在c语言中,char类型占一个字节,而汉字占两个字节,所以不能存储. 在java语言中,char类型占两个字节,而java默认采用Unicode码是16位,所以一个Unicode码占两个字节,java ...
- JS判断字符串长度(英文占1个字符,中文汉字占2个字符)
//计算字符串长度(英文占1个字符,中文汉字占2个字符) 方法一: String.prototype.gblen = function() { var len = 0; for (var i=0; i ...
随机推荐
- 每个Web开发人员应该知道的12个终端命令
Tips 原文作者:Danny Markov 原文地址:12 Terminal Commands Every Web Developer Should Know About 终端是开发人员的武器库中最 ...
- c#中的interface abstract与virtual介绍
abstract 与virtual : 方法重写时都使用 override 关键字,interface中的方法和abstract方法都要求实现 interface用来声明接口1.只提供一些方法规约, ...
- LINQ Distinct()
using System; using System.Collections.Generic; using System.Linq; namespace LinqTest { class Progra ...
- iOS开发笔记17:自定义相机拍照
之前用AVFoundation自定义相机做了拍照与视频相关的东西,为什么要自定义呢?主要是提供更个性化的交互设计,符合app主题,对于视频来说,也便于提供更多丰富有趣的功能.前段时间整理了下拍照部分的 ...
- 从yum提示空间不足到根分区扩容
记录一次安装软件的报错 --1261065212@qq.com 1.系统版本(VMware 虚拟机) [root@ansible-admin ~]# cat /etc/redhat-r ...
- 原生Jdbc操作Mysql数据库开发步骤
原生Jdbc操作Mysql数据库开发步骤 原生的Jdbc就是指,不使用任何框架,仅用java.sql包下的方法实现数据库查询等的操作. 下面是开发步骤: 1.导入数据库驱动包 ...
- Kettle6.0表输入连接数据库
kettle6.0表输入我们需要从数据中获取数据的时候,需要和数据库建立连接,简单的说下步骤: 1.双击表输入: 2.点击"新建",输入参数值: 注意:数据库用户名可以通过sql进 ...
- Amazon Aurora解读(SIGMOD 2017)
Amazon在SIGMOD 2017发表了论文<Amazon Aurora: DesignConsiderations for High Throughput Cloud-Native Rela ...
- centos 7 最小安装后 ip配置
安装玩CentOS7 后要进行 ip的配置 vi /etc/sysconfig/network-scripts/ifcfg-eth0 在里面输入 NAME=eth0 HWADDR=XX:XX:XX:X ...
- javascript学习笔记-2:jQuery中$("xx")返回值探究
最近在写一个jQuery插件的时候,需要用到一个条件: 一组img标签,每一个元素都需要被它前面的元素值src替换,如果是第一个(序列为0)则其值为最后一个元素值,如果是最后一个,那么其值为第一个元素 ...