《SQLServer2005数据库技术及应用》课件第6章_SQL_SERVER_命名规则及SQL_Server的数据类型

上传人:考试不挂****2941... 文档编号:243004724 上传时间:2024-09-13 格式:PPT 页数:20 大小:1,018.50KB
返回 下载 相关 举报
《SQLServer2005数据库技术及应用》课件第6章_SQL_SERVER_命名规则及SQL_Server的数据类型_第1页
第1页 / 共20页
《SQLServer2005数据库技术及应用》课件第6章_SQL_SERVER_命名规则及SQL_Server的数据类型_第2页
第2页 / 共20页
《SQLServer2005数据库技术及应用》课件第6章_SQL_SERVER_命名规则及SQL_Server的数据类型_第3页
第3页 / 共20页
点击查看更多>>
资源描述
, , , , , ,*,SQL Server 2005,SQL Server2005,数据库技术及应用,第6章,SQL SERVER,命名规则及,SQL Server,的数据类型,6.1,SQL Server,命名规则,6.2,SQL Server,的数据类型,SQL Server 2005,6.1,SQL Server,命名规则,6.1.1标识符的分类,SQL Server,的所有对象,例如服务器名、数据库名、表名、常量、变量等都可以有一个标识符。对绝大多数对象来说,标识符是必不可少的。,SQL Server,一共规定了两种类型的标识符:一种是规则标识符,一种是界定标识符。,规则标识符,规则标识符严格遵守标识符有关格式的规定。所以在,T-SQL,语句中凡是规则标识符都不必使用界定符,如和“”来进行限定。,界定标识符,界定标识符是指使用了和“”等界定符号来进行位置限定的标识符。如果数据库对象的标识符不符合命名规则,则必须使用界定标识符来加以限定。,SQL Server 2005,6.1,SQL Server,命名规则,【,例6.1,】,从表123(假设存在这张表)中查询所有信息。,SELECT * FROM 123,在上例中表123违反了命名规则中第3条规定,所以必须加界定标识符加以限定。否则运行时编译器会返回如下错误信息:,服务器: 消息 170,级别 15,状态 1,行 1,第 1 行: 123 附近有语法错误。,SQL Server 2005,6.2,SQL Server,的数据类型,6.,2.1,整数数据类型,整型数据类型提供存储精确数字值的方法。以整数数据类型存储的数总是占用相同比例的存储空间。整数数据类型分为以下5类。,Bit:,称为位数据类型,其数据有两种取值:0和1,长度为1字节。为了优化存储空间,,SQL Server,在存储,bit,型数据时进行了优化,18个,bit,型数据占用1个字节空间,116个,bit,型数据占用2个字节空间,依次类推。,SQL Server 2005,6.2,SQL Server,的数据类型,Bigint,:,用于存储从-263(-9,223,372,036,854,775,807)到263-1(9,223,372,036,854,775,807)之间的所有正负整数,一共占用8个字节。,int,(integer):,int,(,或,integer),数据类型可以存储从-231(-2,147,483,648)到231-1(2,147,483,647)范围之间的所有正负整数。以,int,整数类型存储的每个值占用4个字节,共32位,其中31位用作存储数字,1位用于表示正负。,Smallint,:,可以存储从-215(-32,768)到215-1范围之间的所有正负整数。以,Smallint,数据类型存储的每个值占用2个字节,共16位,其中15位用作存储数字,1位用于表示正负。,Tinyint,:,可以存储从0到255范围之间的所有正整数。以,Tinyint,数据类型存储的每个值占用1个字节。,整数型数据可以在较少的字节里存储较大的精确数字,而且存储结构的效率很高。所以,平时在选用数字类型时,应尽量选用整数数据类型。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.2货币型数据,货币数据类型专门用于货币数据处理,有以下2种类型。,Money:,用于存储货币值,存储在,money,数据类型中的数值以一个正数部分和一个小数部分存储在两个4字节的整型值中,存储范围为-922337213685477.5808到922337213685477.5808,精度为货币单位的万分之一。,Smallmoney,:,与,money,数据类型类似,但其存储的货币值范围比,money,数据类型小,其存储范围为-214748.3468到214748.3467。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.3数字数据类型,数字数据类型数据包括,Decimal,和,numeric:Decimal,数据类型和,numeric,数据类型完全相同。它们可以提供小数所需要的实际存储空间,但也有一定的限制,可以用2到17个字节来存储从-1038-1到1038-1之间的数值。但是两者也有区别,在表格中,只有,numeric,型的数据可以带有,identity,关键字的列,,decimal,可以简写为,dec,。,声明数字数据类型的数据格式是,numeric(p,s),或者,decimal(p,s),其中,p,为精度,s,为小数位数,,s,的默认值为0。比如,25.423对应的数据类型为数字数据类型时,声明为,decimal(5,3)。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.4浮点数据类型,浮点数据类型用于存储十进制小数。浮点数值的数据在,SQL Server,中采用只入不舍的方式进行存储,浮点数据类型包括,float,和,real,两种类型。,Real:,可以存储正的或者负的十进制数值,最大可以有7位精确位数。存储时使用4个字节。,Float:,可以精确到第15位小数,其范围从-1.79,E-308,到1.79,E+308。,用8个字节来存储。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.5日期时间数据类型,SQL Server,提供的日期时间数据类型可以存储日期和时间的组合数据。以日期时间数据类型存储日期或时间的数据比使用字符型数据进行存储更简单。因为,SQL Server,提供了一系列专门处理日期和时间的函数来处理这类数据。而且,如果使用字符型数据来存储日期和时间,只有用户本人可以识别,计算机并不能识别,因此也不能自动将这些数据按照日期和时间来进行处理。,日期时间数据类型有,datetime,和,smalldatetime,两种。,Datetime,:,用于存储日期和时间的结合体,可以存储从公元1753年1月1日零时起-公元9999年12月31日23时59分59秒之间的所有日期和时间,其精确度可达三百分之一秒,即3.33毫秒。,当存储,datetime,数据类型时,默认的格式是:,MM DD YYYY,hh,:mm A.M./P.M。,当插入数据或者在其它地方使用,datetime,类型时,需要用单引号把它括起来。,datetime,数据类型允许使用/、-和.作为不同时间单位间的分隔符。,Smalldatetime,:,存储从1900年1月1日-2079年6月6日内的日期,4个字节。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.6字符数据类型,字符数据类型可以用来存储各种字母、数字符号和特殊符号。,SQL Server,提供了两类字符数据类型。,Char:,其定义形式为,char(n),,每个字符和符号占用一个字节的存储空间。如果实际数据的字符长度短于给定的最大长度,则多余的字节会用空格填充。,Varchar,:,其定义形式为,varchar,(n)。,用,char,数据类型可以存储长达255个字符的可变长度字符串。在实际数据的字符长度短于给定的最大长度时,不会在多余的字节上填充空格。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.7统一码数据类型,统一码数据类型是从,SQL Server7.0,开始提出的新数据类型,用于存储双字节字符,例如汉字。有以下两种类型:,Nchar,(n):,nchar,(n),是固定长度的双字节数据类型,,n,的取值范围是14000,所以可以存储的最大字符数量是4000个字符。,Nchar,其他属性及使用方法和,char,数据类型一样。,Nvarchar,(n):,存储可变长度的双字节数据类型,,n,的取值范围是04000,所以存储的最大字符数量也是4000个。,Nvarchar,其他属性及使用方法和,varchar,数据类型一样。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.8二进制数据类型,所谓二进制数据是一些用十六进制来表示的数据,有以下两种类型。,Binary:,其定义形式为,binary(n),,数据的存储长度是固定的,即,n+4,个字节。二进制数据类型的最大长度(即,n,的最大值)为8000,常用于存储图像等数据。,Varbinary,:,其定义形式为,varbinary,(n),,数据的存储长度是变化的,它为实际所输入数据的长度加上4字节。,在输入二进制常量时,需在该常量前面加一个前缀0,x。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.9图象,文本数据类型,为了方便存储和使用文本、图像等大型数据,,SQL Server,提供了以下三种类型数据。,Text:,容量可以在1-2,31,-1个字节。在定义,Text,数据类型时,不需要指定数据长度,,SQL Server,会根据数据的长度自动为其分配空间。,Ntext,:,采用,unicode,标准字符集,用于存储大容量文本数据。其理论上的容量为2,30,-1(1,073,741,823)个字节。,Image:,用于存储照片、目录图片或者图画,其理论容量为2,31,-1(2,147,483,647)个字节。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.10新增数据类型,sql,_variant:,用于存储除文本、图形数据和,timestamp,类型数据外的其它任何合法的,SQL Server,数据。,table:,用于存储对表或者视图处理后的结果集。这种新的数据类型使得变量可以存储一个表,从而使函数或过程返回查询结果更加方便、快捷。,XML:XML,数据类型是一用专门用于保存和操作,XML,的数据类型。它是以,BLOB,的二进制形式保存的,一个,XML,类型字段可以保存2,GB,的,XML,代码,层次可达128层。此外,,XML,数据类型还有检验,XML,数据完整性的功能,比以前用,text,类型保存,XML,数据方便得多。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.11特殊数据类型,Timestamp:,也称作时间戳数据类型。是一种自动记录时间的数据类型,主要用于在数据表中记录其数据的修改时间。它提供数据库范围内的唯一值。,Uniqueidentifier,:,也称作唯一标识符数据类型。,Uniqueidentifier,用于存储一个16字节长的二进制数据类型,它是,SQL Server,根据计算机网络适配器地址和,CPU,时钟产生的全局唯一标识符代码(,Globally Unique Identifier,,简写为,GUID)。,SQL Server 2005,6.2,SQL Server,的数据类型,6.2.12用户自定义数据类型,用户自定义数据类型并不是真正的数据类型,它只是提供了一种加强数据库内部元素和基本数据类型之间一至性的机制。通过使用用户自定义数据类型能够简化对常用规则和默认值的管理。,1用系统存储过程,SP_ADDTYPE,创建用户自定义数据类型,使用存储过程,SP_ADDTYPE,的语法结构如下:,SP_ADDTYPE ,typename,= type,phystype,= system_data_type, ,nulltype,= null_type, owner= owner_name,SQL Server 2005,6.2,SQL Server,的数据类型,参数说明:,ntype,:,指定用户定义的数据类型的名称。,nsystem,_data_type:,指定相应的系统提供的数据类型的名称及定义。注意,不能使用,timestamp,数据类型,当所使用的系统数据类型有额外说明时,需要用引号将其括起来。,null_type:,指定用户自定义数据类型的,null,属性,其值可以为,null、not null,或者,nonull,。,默认与系统默认的,null,属性相同。,owner_name:,指定用户自定义数据类型的所有者。,SQL Server 2005,6.2,SQL Server,的数据类型,【例6.2】,自定义一个地址数据类型。,USE book,GO,EXEC SP_ADDTYPE address, ,varchar,(80), not null,上例创建了一个名为,address,的用户自定义数据类型,,基于,varchar,数据类型。该列不能为空。,2使用,SQL Server Management Studio,创建用户定义数据类型,SQL Server 2005,6.2,SQL Server,的数据类型,3使用系统存储过程,SP_DROPTYPE,删除用户定义数据类型,使用系统存储过程,SP_DROPTYPE,的语法结构如下:,SP_DROPTYPE ,typename,=type,参数说明:,typename,=type:,要删除的用户自定义的数据类型的名字。,【例6.3】把例6.2创建的自定义数据类型删除掉。,USE book,GO,EXEC SP_DROPTYPE address,4,使用,SQL Server Management Studio,删除用户定义数据类型,SQL Server 2005,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!