页数:20页文件大小:631.6 KB来源: SQLServer2005数据库技术及应用ppt课件
本章先说明SQL Server标识符的分类与命名规则,并演示界定标识符的使用场景;随后系统梳理整数、货币、数字、浮点、日期时间、字符、统一码、二进制以及文本图像等系统数据类型,并介绍sql_variant、table、XML等新增类型与用户自定义数据类型的创建与删除方法。
数据库技术及应用
第6章SQL SERVER命名规则及SQL Server的数据类型
6.1SQL Server命名规则6.1.1标识符的分类SQLServer的所有对象,例如服务器名、数据库名、表名、常量、变量等都可以有一个标识符。对绝大多数对象来说,标识符是必不可少的。SQLServer一共规定了两种类型的标识符:一种是规则标识符,一种是界定标识符。
6.1SQL Server命名规则【例6.1】从表123(假设存在这张表)中查询所有信息。SELECT*FROM[123]在上例中表123违反了命名规则中第3条规定,所以必须加界定标识符加以限定。否则运行时编译器会返回如下错误信息:服务器:消息170,级别15,状态1,行1第1行:'123'附近有语法错误。6.2SQL Server的数据类型6.2.1整数数据类型整型数据类型提供存储精确数字值的方法。以整数数据类型存储的数总是占用相同比例的存储空间。整数数据类型分为以下5类。Bit:称为位数据类型,其数据有两种取值:0和1,长度为1字节。为了优化存储空间,SQLServer在存储bit型数据时进行了优化,1—8个bit型数据占用1个字节空间,1—16个bit型数据占用2个字节空间,依次类推。
6.2SQL Server的数据类型
6.2SQL Server的数据类型6.2.2货币型数据货币数据类型专门用于货币数据处理,有以下2种类型。
6.2SQL 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)。
6.2SQL Server的数据类型6.2.4浮点数据类型浮点数据类型用于存储十进制小数。浮点数值的数据在SQL Server中采用只入不舍的方式进行存储,浮点数据类型包括float和real两种类型。
6.2SQL Server的数据类型6.2.5日期时间数据类型SQL Server提供的日期时间数据类型可以存储日期和时间的组合数据。以日期时间数据类型存储日期或时间的数据比使用字符型数据进行存储更简单。因为SQL Server提供了一系列专门处理日期和时间的函数来处理这类数据。而且,如果使用字符型数据来存储日期和时间,只有用户本人可以识别,计算机并不能识别,因此也不能自动将这些数据按照日期和时间来进行处理。日期时间数据类型有datetime和smalldatetime两种。
6.2SQL Server的数据类型6.2.6字符数据类型字符数据类型可以用来存储各种字母、数字符号和特殊符号。SQL Server提供了两类字符数据类型。
6.2SQL Server的数据类型6.2.7统一码数据类型统一码数据类型是从SQLServer7.0开始提出的新数据类型,用于存储双字节字符,例如汉字。有以下两种类型:
6.2SQL Server的数据类型6.2.8二进制数据类型所谓二进制数据是一些用十六进制来表示的数据,有以下两种类型。
6.2SQL Server的数据类型6.2.9图象,文本数据类型为了方便存储和使用文本、图像等大型数据,SQLServer提供了以下三种类型数据。
6.2SQL Server的数据类型6.2.10新增数据类型
6.2SQL Server的数据类型6.2.11特殊数据类型
6.2SQL Server的数据类型6.2.12用户自定义数据类型用户自定义数据类型并不是真正的数据类型,它只是提供了一种加强数据库内部元素和基本数据类型之间一至性的机制。通过使用用户自定义数据类型能够简化对常用规则和默认值的管理。1.用系统存储过程SP_ADDTYPE创建用户自定义数据类型使用存储过程SP_ADDTYPE的语法结构如下:SP_ADDTYPE[@typename=]type,[@phystype=]system_data_type[,[@nulltype=]‘null_type’][,[@owner=]‘owner_name’]6.2SQL Server的数据类型参数说明:
6.2SQL Server的数据类型【例6.2】自定义一个地址数据类型。USE bookGOEXEC SP_ADDTYPE address,‘varchar(80)’,‘not null’上例创建了一个名为address的用户自定义数据类型,基于varchar数据类型。该列不能为空。2.使用SQLServerManagementStudio创建用户定义数据类型6.2SQL Server的数据类型3.使用系统存储过程SP_DROPTYPE删除用户定义数据类型使用系统存储过程SP_DROPTYPE的语法结构如下:SP_DROPTYPE [@typename=]‘type’参数说明:[@typename=]‘type’:要删除的用户自定义的数据类型的名字。【例6.3】把例
6.2创建的自定义数据类型删除掉。USE bookGOEXECSP_DROPTYPEaddress4.使用SQL Server Management Studio删除用户定义数据类型下载地址:{{downurl}}
{{{a}}}
{{#b}}{{{b}}}
{{/b}} {{/title}} {{#nolog}}登陆注册
{{/nolog}} {{#djsx}}点我刷新
{{/djsx}} {{#gocz}} {{/gocz}} {{#ffqr}} {{/ffqr}}