Oracle中的CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2
来源:互联网 发布:unix socket编程 编辑:程序博客网 时间:2024/04/30 10:47
(1)Oracle中CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2
URL:http://blog.163.com/blade_ralf/blog/static/89741687200962064628485/
Oracle 2009-07-20 18:46
在Oracle中CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2这五种类型的区别
1.CHAR(size)和VARCHAR(size)的区别
CHAR为定长的字段,最大长度为2K字节;
VARCHAR为可变长的字段,最大长度为4K字节;
2.CHAR(size)和NCHAR(size)的区别
CHAR如果存放字母数字占1个字节,存放GBK编码的汉字存放2个字节,存放UTF-8编码的汉字占用3个字节;
NCHAR根据所选字符集来定义存放字符的占用字节数,一般都为2个字节存放一个字符(不管字符或者汉字)
3.VARCHAR(size)和VARCHAR2(size)的区别
在现在的版本中,两者是没有区别的;最大长度为4K字节;推荐使用VARCHAR2;
4.VARCHAR2(size)和NVARCHAR2(size)的区别
最大长度为4K字节,区别同CHAR与NCHAR的区别;(如果数据库字符集长度是2,则NVARCHAR2最大为2K)
5.共同特性
当执行insert的时候,插入的值为'',则转变成null,即insert ... values('') <=> insert ... values(null)
搜索的条件须用where xx is null
6.例子
比如有一个性别字段,里面存放“男,女”的其中一个值,两种常用选择
CHAR(2) 和 NCHAR(1)
(2)浅谈Oracle中的CHAR与NCHAR数据类型
URL:http://blog.csdn.net/dlxu/archive/2008/06/25/2584661.aspx
CHAR与NCHAR在Oracle数据库是常用的类型,不过两种数据类型是互相不兼容的,这里大概简要谈一下这2种数据类型吧。
在Oracle中,CHAR类型是一种固定长度的字符串类型,最大长度是2000个byte,在这里要注意了,是2000个byte,并不是2000个字符的意思。1个字符在Oracle中可能是1个byte到4个byte不等,这个要看数据库的设置了。这个是数据库中有一个参数NLS_LENGTH_SEMANTICS来决定的。CHAR类型有一个特点,就是字符长度总是固定的,也就是说,如果你声明了一个COLUMN类型为CHAR(10),如果你只插入了1个字符,那么系统也会自动在这个字符的右边补上9个空格,Oracle的CHAR类型中,补空格是在右侧补的。但是如果你插入了11个字符,那么就会系统出错,而不会自动截成10个字符。
NCHAR数据类型可能不是经常见到,不过在许多数据库设计中也有了。NCHAR数据类型是专为UNICODE字符而设计的,而且只能插入UNICODE字符串,NCHAR也是最大长度为2000个byte,不过每个字符占多少个byte,是由数据库的国际字符集决定的。同样的,如果插入字符不足定义的长度,比如NCHAR(10)类型中只插入了1个字符,系统会自动在右侧补充9个空格。
NCHAR和CHAR之间是不能直接互相兼容的,而是要通过Oracle的函数或者语法进行转换,比如说从NCHAR转成CHAR是要用TO_CHAR函数进行转换,而CHAR转换为NCHAR,比如说'ABCDE'这个CHAR字符串,则要通过N'ABCDE'来进行表示,也就是说前面要有一个N这个特殊字符,表示是NCHAR类型。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jackpk/archive/2009/08/14/4445423.aspx
- Oracle中的CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2
- Oracle中的CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2
- Oracle中CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2
- Oracle - char, nchar,varchar,varchar2(byte), varchar2(char) 和 nvarchar2
- 【Oracle】Oracle中CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2字符总结
- ORACLE字符类型详解----char、nchar、varchar、varchar2、nvarchar2
- ORACLE的char、nchar、varchar、varchar2、nvarchar2的区别
- Oracle char、varchar、varchar2、nvarchar、nvarchar2、nchar比较
- ORACLE字符类型详解----char、nchar、varchar、varchar2、nvarchar2
- ORACLE的char、nchar、varchar、varchar2、nvarchar2的区别
- Oracle char varchar2 nchar nvarchar2 不同
- Oracle中的char,varchar,varchar2,nvarchar,nvarchar2的比较
- oracle中的char、varchar、varchar2、nvarchar、nvarchar2区别
- 在Oracle中CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2这5种类型的区别
- 在Oracle中CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2这五种类型的区别
- oracle char varchar varchar2 nvarchar nvarchar2
- oracle char、nchar、varchar2、nvarchar2和nvarchar区别
- Oracle字符串类型char,nchar,varchar2,nvarchar2区别
- Attach()函数和Detach()函数
- 最近钓鱼岛事件后日本民众的反应(下)
- MyEclipse 6.5.1 GA 下载
- [DB]ORACLE监控表空间
- 终端控制转义序列的研究
- Oracle中的CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2
- DroidDraw
- 11111
- linux ls 命令 最常用的选项
- 数据加密
- qsort&&bsearch
- powerbuilder 读取excel报表中的隐藏列
- Linux 的多线程编程的高效开发经验
- 客户端如何实现对MFC ActiveX的Event 的调用介绍