Chinaunix首页 | 论坛 | 博客
  • 博客访问: 537183
  • 博文数量: 65
  • 博客积分: 1158
  • 博客等级: 少尉
  • 技术积分: 1261
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-18 22:07
文章分类

全部博文(65)

文章存档

2016年(1)

2014年(2)

2013年(9)

2012年(53)

分类: Oracle

2012-11-26 18:41:10

一.数据类型

1.char

char(size char|byte)

其中size的最大值为2000bytes,最小值为1,默认情况下是byte,如果不指定的话,可以通过修改参数NLS_LENGTH_SEMANTICS 来修改这个默认设置。char(10)是指指定了这个数据类型是固定的数据长度10byte或者10char(具体看参数设置),如果插入的值只占用一个byte,那么其他的空间就浪费了,所以这种适合长度比较固定的数据类型。char(10 byte)最多只能插入5个汉字,但是char(10 char)最多能插入10个汉字。

2.nchar

nchar只是char对应国际化的一种支持,CHAR如果存放字母数字占1个字节,存放GBK编码的汉字存放2个字节,存放UTF-8编码的汉字占用3个字节,NCHAR根据所选字符集来定义存放字符的占用字节数,一般都为2个字节存放一个字符(不管字符或者汉字) ,所以使用这种方式的话,如果大多都是英文字符,那就很浪费了!

3.nvarchar2

nvarchar2与nchar不同的是,这种类型的长度是可变了,只要不超过最大长度,最多4000bytes

4.varchar2

不同于char的是,他的长度是可变的,同样可以指定varchar2(size byte|char),可以通过修改参数NLS_LENGTH_SEMANTICS 来修改这个默认设置。不超过4000bytes,最小1byte,尽管允许插入('')长度为0的值。








阅读(2323) | 评论(0) | 转发(0) |
0

上一篇:恺撒的密码

下一篇:列车长的烦恼

给主人留下些什么吧!~~