SQL Server数据类型的介绍
同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行microsoft windows 98 的膝上型电脑到运行microsoft windows 2000 的大型多处理器的服务器等多种平台使用。
1.sql server的数据类型
数据类弄是数据的一种属性,表示数据所表示信息的类型。任何一种计算机语言都定义了自己的数据类型。当然,不同的程序语言都具有不同的特点,所定义的数据类型的各类和名称都或多或少有些不同。sqlserver 提供了 25 种数据类型:
·binary [(n)]
·varbinary [(n)]
·char [(n)]
·varchar[(n)]
·nchar[(n)]
·nvarchar[(n)]
·datetime
·smalldatetime
·decimal[(p[,s])]
·numeric[(p[,s])]
·float[(n)]
·real
·int
·smallint
·tinyint
·money
·smallmoney
·bit
·cursor
·sysname
·timestamp
·uniqueidentifier
·text
·image
·ntext
(1)二进制数据类型
二进制数据包括 binary、varbinary 和 image
binary 数据类型既可以是固定长度的(binary),也可以是变长度的。
binary[(n)] 是 n 位固定的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储窨的大小是 n + 4 个字节。
varbinary[(n)] 是 n 位变长度的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储窨的大小是 n + 4个字节,不是n 个字节。
在 image 数据类型中存储的数据是以位字符串存储的,不是由 sql server 解释的,必须由应用程序来解释。例如,应用程序可以使用bmp、tief、gif 和 jpeg 格式把数据存储在 image 数据类型中。
(2)字符数据类型
字符数据的类型包括 char,varchar 和 text
字符数据是由任何字母、符号和数字任意组合而成的数据。
varchar 是变长字符数据,其长度不超过 8kb。char 是定长字符数据,其长度最多为 8kb。超过 8kb 的ascii 数据可以使用text数据类型存储。例如,因为 html 文档全部都是 ascii 字符,并且在一般情况下长度超过 8kb,所以这些文档可以 text 数据类型存储在sql server 中。
(3)unicode 数据类型
unicode 数据类型包括 nchar,nvarchar 和ntext
在 microsoft sql server 中,传统的非 unicode 数据类型允许使用由特定字符集定义的字符。在 sql server安装过程中,允许选择一种字符集。使用 unicode 数据类型,列中可以存储任何由unicode 标准定义的字符。在 unicode 标准中,包括了以各种字符集定义的全部字符。使用unicode数据类型,所战胜的窨是使用非 unicode 数据类型所占用的窨大小的两倍。
在 sql server 中,unicode 数据以 nchar、nvarchar 和 ntext 数据类型存储。使用这种字符类型存储的列可以存储多个字符集中的字符。当列的长度变化时,应该使用nvarchar 字符类型,这时最多可以存储 4000 个字符。当列的长度固定不变时,应该使用 nchar 字符类型,同样,这时最多可以存储4000 个字符。当使用 ntext 数据类型时,该列可以存储多于 4000 个字符。
(4)日期和时间数据类型
日期和时间数据类型包括 datetime 和 smalldatetime两种类型
数字数据只包含数字。数字数据类型包括正数和负数、小数(浮点数)和整数
在 microsoft sql server 中,货币数据的数据类型是money 和 smallmoney
(7)特殊数据类型 特殊数据类型包括前面没有提过的数据类型。特殊的数据类型有3种,即 timestamp、bit 和 uniqueidentifier。
用户定义的数据类型基于在 microsoft sql server 中提供的数据类型。当几个表中必须存储同一种数据类型时,并且为保证这些列有相同的数据类型、长度和可空性时,可以使用用户定义的数据类型。例如,可定义一种称为 postal_code 的数据类型,它基于 char 数据类型。 创建用户定义的数据类型可以使用 transact-sql 语句。系统存储过程 sp_addtype 可以来创建用户定义的数据类型。其语法形式如下:
当用户定义的数据类型不需要时,可删除。删除用户定义的数据类型的命令是 sp_droptype {'type'}。 |
推荐阅读
-
jsp 连接sql server 2008 连接不上的解决方法
-
SQL SERVER 查询正在实行的SQL语句
-
优化 SQL Server 索引的小技巧
-
Sql Server查询性能优化之不可小觑的书签查找介绍
-
优化SQL Server的内存占用之执行缓存
-
SQL Server 数据页缓冲区的内存瓶颈分析
-
在SQL Server中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名
-
Sql Server 2012 转换函数的比较(Cast、Convert和Parse)
-
多列复合索引的使用 绕过微软sql server的一个缺陷
-
Sql Server 查询性能优化之走出索引的误区分析