Sql Server之数据类型详解

您所在的位置:网站首页 货币符号都有哪些类型 Sql Server之数据类型详解

Sql Server之数据类型详解

2024-07-16 05:01| 来源: 网络整理| 查看: 265

阅读目录

一:系统数据类型 2.浮点数据类型 3.字符数据类型 4.日期和时间数据类型 5.文本和图形数据类型 6.货币数据类型 7.位数据类型 8.二进制数据类型 9.其他数据类型 二:自定义数据类型

  数据类型是一种属性,用于指定对象可保存的数据的类型,SQL Server中支持多种数据类型,包括字符类型、数值类型以及日期类型等。数据类型相当于一个容器,容器的大小决定了装的东西的多少,将数据分为不同的类型可以节省磁盘空间和资源。   Sql Server 还能自动限制每个数据类型的取值范围,例如定义了一个类型为int的字段,如果插入数据时插入的值的大小在smallint或者tinyint范围之内, Sql Server 会自动将类型转换为smallint 或者tinyint,这样一来,在存储数据时,占用的存储空间只有int的1/2或则1/4. Sql Server数据库管理系统中的数据类型可以分为两类,分别是:系统默认的数据类型和用户自定义的数据类型。下面分别介绍这两大类数据类型的内容.

回到顶部 一:系统数据类型

 Sql Server 提供的系统数据类型有一下几大类,共25种。 Sql Server会自动限制每个系统数据类型的取值范围,当插入数据库中的值 超过了数据允许的范围时, Sql Server 就会报错。

1.整数数据类型

   整数数据类型是常用的数据类型之一,主要用于存储数值,可以直接进行数据运算而不必使用函数转换. (1).bigint   每个bigint存储在8个字节中,其中一个二进制位表示符号位,其它63个二进制位表示长度和大小,可以表示-2的63次方~2的63次方-1范围内的所有整数。 (2).int  int或者integer,每个int存储在4个字节中,其中一个二进制位表示符号位,其它31个二进制位表示长度和大小,,可以表示-2的31次方~2的31次方-1范围内的所有整数。 (3).smallint  每个smallint类型的数据占用了两个字节的存储空间,其中一个二进制位表示整数值的正负号,其它15个二进制位表示长度和大小,,可以表示-2的15次方~2的15次方-1范围内的所有整数。 (4).tinyint   每个tinyint类型的数据占用了一个字节的存储空间,可以表示0~255范围内的所有整数.

回到顶部 2.浮点数据类型

  浮点数据类型存储十进制小数,用于表示浮点数值数据的大致数值数据类型。浮点数据为近似值;浮点数值的数据则Sql Server中采用了只入不舍的方式进行存储,即当且仅当要舍入的数是一个非零数时,对其保留数字部分的最低有效位上加1,并进行必要的近位。 (1).real   可以存储正的或者负的十进制数值,它的存储范围从-3.40E+38~-1.18E-38、0以及1.18E-38~3.40E+38.每个real类型的数据占用4个字节的存储空间。 (2)float[(n)]   其中为用于存储float数值尾数的位数(以科学计数法表示),因此可以确定精度和存储大小。如果指定了n它必须是介于1和53之间的某个值。n的默认值为53.   其范围从-1.79E+308~-2.23E-308、0以及2.23E+308~1.79E-308。如果不指定数据类型float的长度,它占用8个字节的存储空间。float数据类型可以写成float(n)的形式,n为指定float数据的精度,n为1~53之间的整数值。当n取1~24时,实际上定义了一个real类型的数据,系统用4个自己存储它。当n取25~53时,系统认为其是float类型,用8个字节存储它。 (3).decimal[(p[,s])]和numeric[(p[,s])   带固定精度和小数位数的数值数据类型。使用最大精度时,有效值从-10^38+1~10^38-1。numeric在功能上等价于decimal。   p(精度)指定了最多可以存储十进制数字的总位数,包括小数点左边和右边的位数,该精度必须是从1到最大精度38之间的值,默认精度为18.   s(小数位数)指定小数点右边可以存储的十进制数字的最大位数,小数位数必须是从0到p之间的值,仅在指定精度后才可以指定小数的位数。默认小数位数是0;因此,0【类型】节点,右击【用户定义数据类型】节点,在弹出的框中,按照说明相应操作即可。很简单,就不截图赘述了。 (2).使用存储过程创建用户自定义数据类型  触雷使用图形界面创建自定义数据类型,Sql Server中的系统存储过程sp_addtype也可为用户提供使用T_sql语句创建自定义数据类型的方法。其语法如下:  sp_addtype [@typename= ] type,  [@phystyle=] system_data_type  [,[@nulltype =] 'null_type'] 其中,各参数的含义如下: type:用于指定用户定义的数据类型的名称。 system_data_type:用于指定相应的系统提供的数据类型的名称及定义。注意:未能使用timestamp数据类型,当所使用的系统数据类型有额外的说明时,需要用引号将其括起来。 null_type:用于指定用户自定义的的数据类型的null属性,其值可为“null” 、“not null“或”notnull“。默认时与系统默认的null属性相同。用户自定义的数据类型的名称在数据库中应该是唯一的。 eg:sp_addtype homeAddress 'varchar(120)','not null' 删除用户自定义数据类型: a.用图形界面删除,不做赘述。 b.用系统存储过程sp_droptype删除. eg:sp_droptype homeAddress,其中homeAddress为用户自定义数据类型名称. 注意:数据库正在使用的用户自定义数据类型,不能被删除。

 转自:http://www.cnblogs.com/selene/



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3