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)代替

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

时间: 2024-10-11 13:28:59

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

mysql中最常用到的数据类型,约束条件,以及表,字段,行的crud操作指令,function和precedure之间的区别,索引,安全,事务

数据库总结 传统记录数据的缺点:不易保存,备份困难,查找不便 数据库:存储数据的仓库,描述一个事务的基本信息 优点:1.持久化存储 2.读写速度极高 3.保证数据的有效性 RDBMS relational database management system 军火当前主要使用两种类型的数据库:1.关系型数据库,2非关系型数据库 关系型数据库的主要产品: oracle:主要大型项目中使用,银行,电信等项目 mysql:web时代使用最广泛的关系型数据库 ms sql server: 微软的项目中使

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

ios中常用数据类型相互转换 //1. NSMutableArray和NSArray互转 // NSArray转为NSMutableArray NSMutableArray *arrM = [arr mutableCopy]; //方法1 NSMutableArray *arrM = [NSMutableArray arrayWithArray:arr]; //方法2 // NSMutableArray转为NSArray NSArray *arr = [arrM copy]; //方法1 NSA

socket编程中最常用的几个数据类型和转换函数

高位字节优先和低位字节优先.Internet上数据以高位字节优先顺序在网络上传输,所以对于在内部是以低位字节优先方式存储数据的机器,在Internet上传输数据时就需要进行转换. 第一个结构类型是:struct sockaddr 该类型是用来保存socket信息的 struct sockaddr {   unsigned short sa_family;   /* 地址族, AF_xxx */   char sa_data[14];  /* 14 字节的协议地址 */ }; sa_family一

SQL Server中开发常用的数据类型

我们在日常开发过程中,在进行数据库设计的时候,经常会遇到如果选择数据类型的问题,选择什么样的数据类型最合适,然后当我们在项目中建立对应实体的时候,如何选择对应的CLR类型.针对这些问题,于是这篇文章诞生了. SQL Server数据类型 占用字节数 表示范围 对应的CLR类型 适用场景 char char(n)   System.String 使用char(2)来表示类型或状态(建议用tinyint代替) varchar varchar(n) 1~8000 System.String 只包含英文

python常用数据类型内置方法介绍

熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 一.整型 a = 100 a.xxx() class int(object): def bit_length(self): ##如果将某个整数用2进制表示,返回这个2进制所占bit位数. return 0 def conjugate(self, *args, **kwargs): ##共轭复数 @classmethod # known case def from_bytes(cls, bytes, byteorder, *ar

RTT常用数据类型

RTT常用数据类型定义在rtdef.h中 /* RT-Thread basic data type definitions */ typedef signed char rt_int8_t; /**< 8bit integer type */ typedef signed short rt_int16_t; /**< 16bit integer type */ typedef signed long rt_int32_t; /**< 32bit integer type */ typed

【Oracle】Oracle中的常用操作

一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b.关闭ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>shutdown SVRMGR>quit 启动

JAVA中分为基本数据类型及引用数据类型

一.基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围-32768~32717,默认值0 int:整型,用于存储整数,在内在中占32位,即4个字节,取值范围-2147483648~2147483647,默认值0 long:长整型,在内存中占64位,即8个字节-2^63~2^63-1,默认值0L float:浮点型,在内存中占32位,即4个字节,用于存储带小数点的数

OC常用数据类型大全解

UI基础 OC常用数据类型 Block Block封装了一段代码,可以在任何时候执行 Block可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值.它和传统的函数指针很类似,但是有区别:block是inline(内联函数)的,并且默认情况下它对局部变量是只读的 苹果官方建议尽量多用block.在多线程.异步任务.集合遍历.集合排序.动画转场用的很多 Blocks的定义 Blocks的定义: int (^MySum)(int, int) = ^(int a, int b) { re