Mssql中一些常用数据类型的说明和区别

1、bigint
  占用8个字节的存储空间,取值范围在-2^63 (-9,223,372,036,854,775,808) 到 2^63-1
(9,223,372,036,854,775,807)之间的19位整数,对应C#中的Int64/long

2、int
  占用4个字节的存储空间,取值范围在-2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647)之间的10位整数,对应C#中的Int32/int

3、smallint
  占用2个字节的存储空间,取值范围在-2^15(-32768)到2^15-1(32767)之间的5位整数,对应C#中的Int16/short

4、tinyint
  占用1个字节的存储空间,取值范围在0-255之间的整数,对应C#中的Byte/byte

5、bit
  最大占用1个字节的存储空间,取值0/1(false/true),对应C#中的Boolean

6、char(n)

固定长度,非Unicode字符串数据,存储长度为1-8000字节,一般用来存储长度一直或长度差异较小的数据项。n为自定义可存储的最大长度。

例如定义数据列的类型为char(5),当存储的数为123、abcd、12345时,它们所占用的存储空间都是5个字节的空间

7、varchar(n|max)
      非固定长度,非Unicode字符串数据,存储长度为1-8000字节,一般用来存储长度差异较大的数据项。n为自定义可存储的最大长度。

  例如定义数据列的类型为varchar(5), 当存储的数为123、abcd、12345时,它们所占用的存储空间依次为3、4、5个字节的空间(实际存储空间要+2个字节)。

  当n为max时,最大存储长度为2^31-1个字节

  来自msdn的建议:

  • 如果列数据项的大小一致,则使用 char
  • 如果列数据项的大小差异相当大,则使用 varchar
  • 如果列数据项大小相差很大,而且大小可能超过 8,000 字节,请使用 varchar(max)

8、nchar/nvarchar

  区别于char/varchar,nchar和nvarchar可存储Unicode字符,比如汉字

  英文字符在数据库中存储时占用1个字节,中文和其他一些非英文字符则占用两个字节,如果在char或者varchar中存储中文字符,在非中文的操作系统中显示为乱码??,为了解决这种问题就产生了nchar和nvarchar两种数据类型

  在nchar和nvarchar中无论是中文还是英文字符都是占用两个字节,所以最多能存储4000个字符

9、text/ntext/image类型

  分别用于存储大型非 Unicode 字符、Unicode 字符及二进制数据的固定长度数据类型和可变长度数据类型,微软表示在未来的mssql版本中将会删除这三种类型,建议使用varchar(max)/nvarchar(max)和varbinary(max)代替

其他的后面再写,若有不当之处,烦请各位拍砖!

Mssql中一些常用数据类型的说明和区别的更多相关文章

  1. python中的常用数据类型

    python中的常用数据类型 以下是个人总结的python中常见的数据类型,话不多说,我们直接步入正题: 数字类型 整型类:int类可以表示任意大小的整数值,在python中没有像JAVA或者C那样的 ...

  2. 在MSSQL中的简单数据类型递归

    在某些特定的项目需求中,我们需要实现树状数据结构, 由此,我们需要用递归将数据查询出来. WITH T AS ( SELECT ID,PID FROM TableName WHERE ID=1 UNI ...

  3. SQL常用数据类型 字段约束

    SQL中的常用数据类型: 整数:int 小数:double 字符串:varchar(长度),建议 用2的整数倍 日期:date 格式: 'YYYY-MM-DD' SQL中的约束: a.主键约束:pri ...

  4. ios中常用数据类型相互转换

    ios中常用数据类型相互转换 //1. NSMutableArray和NSArray互转 // NSArray转为NSMutableArray NSMutableArray *arrM = [arr ...

  5. MySQL学习之路3-MySQL中常用数据类型

    MySQL中常用数据类型 字符型 存储字符型数据.例如姓名,地址,电话号码等.使用引号括起来,一般使用单引号. 常用类型: char(255) 定长字符串,最大长度255个字符. varchar(25 ...

  6. NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介

    一.Redis API For .Net 首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库.目前最流行的就是Se ...

  7. MySQL数据库3 - MySQL常用数据类型

    一. MySql常用数据类型 数据类型:整数(tinyint smailint int bigint) 定点数 decimal(p,s) ------ 小数点位置固定的       ---> 数 ...

  8. java-API中的常用类,新特性之-泛型,高级For循环,可变参数

    API中的常用类 System类System类包含一些有用的类字段和方法.它不能被实例化.属性和方法都是静态的. out,标准输出,默认打印在控制台上.通过和PrintStream打印流中的方法组合构 ...

  9. 【转】NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介

    一.Redis API For .Net 首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库.目前最流行的就是Se ...

随机推荐

  1. Fatal error: Maximum function nesting level of '100' reached, aborting!

    这个问题是由于启用了xdebug,而xdebug默认设置了函数最大嵌套数为100 解决办法: 找到php.ini文件,找到xdebug在最后加上xdebug.max_nesting_level = 5 ...

  2. [Unity3D]做个小Demo学习Input.touches

    [Unity3D]做个小Demo学习Input.touches 学不如做,下面用一个简单的Demo展示的Input.touches各项字段,有图有真相. 本项目已发布到Github,地址在(https ...

  3. java自定义注解实现前后台参数校验

    2016.07.26 qq:992591601,欢迎交流 首先介绍些基本概念: Annotations(also known as metadata)provide a formalized way ...

  4. iOS ---Swift学习与复习

    swift中文网 http://www.swiftv.cn http://swifter.tips/ http://objccn.io/ http://www.swiftmi.com/code4swi ...

  5. 学习ASP.NET MVC(二)——我的第一个ASP.NET MVC 控制器

    MVC全称是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范,用一种业务逻辑和数据显示分离的方法组织代码,将 ...

  6. app的同源和域的问题

    app的同源和域的问题

  7. 使用maven下载jar包的source和javadoc

    使用maven菜单下载sources和javadocs没什么反应,还是命令给力. 使用参数下载源码包与doc包: -DdownloadSources=true 下载源代码jar -DdownloadJ ...

  8. IOS开发之控件篇UINavigationController第二章 - 标题

    1.什么是标题(Title) NavigationController里面的viewcontroller,每一页都会有一个标题,如图3r就是这个页面的标题 2. 如何设置标题 一般都会在这个Navig ...

  9. Netty学习四:Channel

    1. Channel Channel是Netty的核心概念之一,它是Netty网络通信的主体,由它负责同对端进行网络通信.注册和数据操作等功能. 1.1 工作原理 如上图所示: 一旦用户端连接成功,将 ...

  10. javaweb回顾第十篇JSTL

    前言:JSTL(JSP Standard Tag Library)JSP标准标签库.它的目的是为了简化JSP的开发,如何没有JSTL可能我们开发的时候就需要写大量的自定义标签,无疑会加大开发难度,有了 ...