sql server 2008 数据库数据类型
sql server 2008 数据库数据类型
一、数值型
- int:整数类型,它的精度由执行机构确定。。
- smallint:短整数类型,它的精度由执行机构确定。。
- numeric(p,s):数值型,并给定精度p(总的有效位)或标度s(十进制小数点右边的位数)。
- float:浮点型数值型,其精度等于或大于给定的精度p。
- eral:浮点数值型,它的精度由执行机构确定。。
double:双精度浮点型,它的精度由执行机构确定。
二、字符类型
1.char:char存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间。
2.VARCHAR:存储变长数据,但存储效率没有CHAR高。如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。
区别: varchar比char节省空间,但在效率上比char差一些。
varchar是可变字符串,比如:用varchar(5)存储字符串“abc”,只占用3个字节的存储空间,而用char(5)存储,则占用5个字节(“abc ”)。
3.NCHAR、NVARCHAR:从名字上看比前面三种多了个“N”。它表示存储的是Unicode数据类型的字符。我们知道字符 中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节存储,英文与汉字同时存在时容易造成混乱,Unicode字符集就是为了解决字符集这 种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。
区别:varchar按字节存储数据
varchar(6),最多能存储6个字节的数据,比如:“哈哈哈”,“abcdef”......
nvarchar按字符存储数据
nvarchar(6),最多能存储6个字符/中文数据,比如:"哈哈哈哈哈哈",“abcdef”......
nvarchar(m)最大存储的实际字节长度=n*m(n跟据编码方式而定),如果nvarchar存储的是英文字符,也是根据编码方式存储n的字节长度。也就是说,如果用nvarchar存储英文字符,会浪费一半以上的存储空间....
正常情况下,我们使用varchar也可以存储中文字符,但是如果遇到操作系统是英文操 作系统并且对中文字体的支持不全面时, 在SQL Server存储中文字符为varchar就会出现乱码(显示为??).而且正常情况下,主机都会支持中文的环境,所以如果使用varchar来存储数 据,在开发阶段是发现不了的.多数情况下,在布署的时候也不会有问题.如果布署的主机是英文操作系统,并且不支持中文环境,那问题就出来了.
三、位串型
1.bit(n):定义二进制位串,长度为n。
2.bit varying(n):可变长二进制位串,最大长度为n。
四、时间型
datetime:定义一个日期类型,日期和时间数据由有效的日期或时间组成。
五、布尔型
boolean:定义布尔数,其值可以是true或false。
最新文章
- qt越来越好了
- java 利用JAX-RS快速开发RESTful 服务
- SAP大数据为";海上F1";提供技术支持
- Android 学习笔记之如何使用SQLite数据库来保存数据...
- Sharepoint学习笔记—习题系列--70-573习题解析 -(Q111-Q114)
- HDU 1251 统计难题(Trie模版题)
- 用Hbase存储Log4j日志数据:HbaseAppender
- Assert断言测试
- [AngularJS] New in Angular 1.3 - Performance Boost with debugInfoEnabled
- hibernate的n+1问题
- 2014 多校联合训练赛6 Fighting the Landlords
- oracle查询语句中case when的使用
- win7搭建php7+apache2.4
- 翻译连载 | 附录 A:Transducing(下)-《JavaScript轻量级函数式编程》 |《你不知道的JS》姊妹篇
- 进程与程序 并行 并发 串行 阻塞 join函数
- nginx根据CPU配置多线程运行
- winform 中 给DataGridView的表头添加CheckBox
- 洛谷P1208
- hdu4462--曼哈顿距离
- Netty源码分析第8章(高性能工具类FastThreadLocal和Recycler)---->;第5节: 同线程回收对象