SQL-Server2005数据类型.ppt
文本预览下载声明
2004-9-10 第3章 T-SQL语句 第2章 SQL Server2005数据类型 2.1 系统数据类型 2.2 用户自定义数据类型 2.1 数据类型 数据类型是指数据所代表的信息的类型。每一种语言都定义了自己的数据类型。 SQL Server 2000中定义了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、smallymoney、 bit、cursor、sysname、timestamp、uniqueidentifier、 text、image 和ntext; 二进制数据类型 二进制数据类型包括三种:binary 、varbinary和image。 binary [(n)]:固定长度的n个字节二进制数据。n必须是1到8000。存储空间大小为n+4字节。 varbinary[(n)]:n个字节可变长二进制数据。n必须从1到8000。存储空间大小为实际数据长度+4个字节,而不是n个字节。 image:可变长度的二进制,其最大长度为231-1个字节。 数字数据类型 数字数据类型包括精确数字、近似数字两种。精确数字又分为精确整数和精确小数。 1.精确整数 精确整数数据类型有四种,它们是bigint 、int、smallint、tinyint。 bigint:从-263到263-1的整型数据。存储大小为8个字节。 int:从-231到231-1的整型数据。存储大小为4个字节。 smallint:从-215到215-1的整数数据。存储大小为2个字节。 tinyint:从0到255的整数数据。存储大小为1个字节。 bigint 的存储范围大大于int 的存储范围,int 的存储范围大于Smallint 的存储范围,Smallint的存储范围大于tinyint的存储范围。 2.精确小数 精确小数数据类型有两种:它们是decimal和numeric。 decimal :带定点精度和小数位数的numeric数据类型,从-1038+1到1038-1。 numeric:功能上等同decimal。 3.近似数字 近似小数数据类型有两种:float 和 real 。 float:从-1.79E+308到1.79E+308的浮点精度数字。 real:从-3.04E+38到3.04E+38的浮点精度数字。 字符数据类型 字符数据是用一对单引号括起来由字母、数字、和符号组合而成的数据,在内存中占用一个字节。例’Nanjing’、’3.23’、’*op’都是合法的字符数据。字符数据类型有char、varchar和text三种。 char:固定长度的非unicode字符数据,最大长度为8000个字符; varchar:可变长度的非unicode 字符数据,最大长度为8000个字符; text:可变长度的非unicode 字符数据,最大长度为231-1个字符; 如果没有在数据定义或变量声明语句中指定n,则默认长度为1。 unicode 数据类型 对于用单个字节编码每个字符的数据类型,存在的问题就是此数据类型只能表示256个不同的字符。象汉字、日文或韩国文字这样具有数千个字符的字母表就不可能处理了。 unicode标准每个字符用两个字节来编码,所以在系统中使用unicode数据类型,就可以解决大字母表的字符问题了。 unicode数据类型包括nchar、nvarchar和ntext。 nchar:固定长度的unicode 数据,最大长度为4000个字符。 nvarchar:可变长度的unicode数据,其最大长度为4000字符。 ntext:可娈长度的unicoce数据,其最大长度为230-1个字符。 当列的长度固定不变时,使用nchar数据类型;当列的长度变化时,使用nvarchar数据类型;如果需要存储的字符数多于4000个时,应使用ntext数据类型存储。 日期和时间数据类型 日期和时间数据类型包括datetime 和smalldatetime两种数据类型。 datetime:存储从1753年1月1日到9999年12月31日的日期和时间数据,每一个值要求8个字节,精确到百分之三秒(或3.33毫秒)。 smalldatime:存储从1900年1月1日到2079年12月31日的日期和时间数据,每一个值要求4个字节,精确到分钟。 设置日期格式的命令如下:
显示全部