关于数据库字段长度字节(byte)和(bit)的几个概念问题!
2015-07-09 10:30
405 查看
应用据库也很久了,只是几个概念问题一直在纠结!
1 、字节(byte)2、位(bit)
3、存储单位
4、字节和二进制的关系,即byte和bit的转化关系。
看来看去,其实就是一个概念里面的两个不同单位,标准单位值之间的转化,首先要理解的就是不论是bit还是byte,都是存储单位,用来计量存储容量的单位。 那么再来看二进制和bit的关系,二进制系统中,每个0或者1就是一个位即bit。而在计算机系统中数据存储的时候用byte,存储数据时最小单位就是byte,跟bit没关系。数据传送的时候大部分又用bit,而一个字节(byte)=8个位(bit)。
之所以很纠结就是主要关于,一个汉字、一个英语字母、一个汉字符号、一个英语符号分别站多少位,一个汉字占2个字节,一个英语字母占1个字节不分大小写。
int 存储数值的范围是:-2的32次方--2的32次发减1,(也就是-247483648至147483647之间的所有正负整数),所以说int是不需要指定长度为多少的。
解释下char和nchar的异同
首先char众所周知最大取值是8000,每一个字节就是一个存储单位,英文和数值只占一个存储单位,所以char(10)可以最多容纳10个英文或者数字,但中文不一样,在某些系统下有每个中文会占4个存储单位,所以char(10)有可能容纳2个或者4个中文。
而nchar的最大取值范围是4000刚好是char的一半,为什么是4000呢?因为nchar采用了一种标准,这种标准的名字我就忘记了,它规定每个存储单位是2个字节而并非char的每存储单位1字节。所以nchar(10)最大可以容纳10个数字或者英文字母或者标点符号,而中文就最大可以容纳10个或者5个,视系统情况而定。
相关文章推荐
- Lua编程示例(一):select、debug、可变参数、table操作、error
- SQL学习笔记三 select语句的各种形式小结
- 一条select语句引起的瓶颈问题思考
- SQL Select语句完整的执行顺序
- mysql SELECT语句去除某个字段的重复信息
- 点击按钮后 文本框变为Select下拉列表框
- javascript 模拟select下拉列表特效
- javascript select options 排序(保持option 对象完整性)
- 用javascript和css模拟select的脚本
- js select常用操作控制代码
- mysql中insert与select的嵌套使用方法
- jquery的clone方法应用于textarea和select的bug修复
- SQLServer中SELECT语句的执行顺序
- MySQL进阶SELECT语法篇
- asp中 select top 问题!~
- 关于vs2005、vs2008和vs2010项目互转的总结
- ASP中获得Select Count语句返回值的方法
- 数据库插入数据之select into from与insert into select区别详解
- Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
- vs2010根据字符串内容添加断点的方法介绍