第8章管理数据库其他对象课件_第1页
第8章管理数据库其他对象课件_第2页
第8章管理数据库其他对象课件_第3页
第8章管理数据库其他对象课件_第4页
第8章管理数据库其他对象课件_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第8章管理数据库其他对象目录8.1用户自定义数据类型

8.2默认值

8.3规则8.4用户自定义函数

作业小结8.1用户自定义数据类型

8.1.1用户自定义数据类型的功能

系统数据类型数据类型用户自定义数据类型

在Model数据库中定义——应用于所有数据库

在用户数据库中定义——只能应用于该定义数据库上一页返回目录下一页8.1用户自定义数据类型8.1.2实现用户自定义数据类型

使用企业管理器创建用户自定义数据类型利用系统存储过程创建用户自定义数据类型格式:

sp_addtype<新类型名>,‘系统类型’

[,‘NULL’|‘NOTNULL’]

sp_droptype<类型名>——删除上一页返回目录下一页8.1用户自定义数据类型[例1]、自定义一个电话号码数据类型,类型名为Tel,所依赖的系统数据类型为varchar,长度为30,且不能为空。

execsp_addtypeTel,‘varchar(30)’,‘notnull’上一页返回目录下一页8.1用户自定义数据类型[例2]删除自定义的电话号码数据类型。

execsp_droptypeTel上一页返回目录下一页8.1用户自定义数据类型练习1:自定义一个成绩数据类型,然后应用该数据类型建立一个学生成绩表。上一页返回目录下一页execsp_addtypecj,‘decimal(5,1)’,‘null’goCREATETABLEstu(snochar(10),Jsjcj,Yycj,Aspcj)8.2默认值8.2.1默认值的概念及使用方法

1、默认值的概念2、默认约束与默认值对象的区别

被约束的列多次应用、列或自定义数据类型3、使用默认值对象的步骤为:

(1)创建一个默认值对象(2)将其捆绑到列或用户自定义数据类型上删除的步骤相反上一页返回目录下一页8.2默认值8.2.2实现默认值

1、创建默认值

CREATEDEFAULT<默认值名>AS‘值’2、绑定默认值

sp_bindefault<默认值名>‘表名.列名’

|‘自定义数据类型名’

上一页返回目录下一页8.2默认值8.2.2实现默认值

[例3]在xk数据库中创建名为unknow的默认值,表示‘待定‘,然后将其绑定到course表的teacher列上。

上一页返回目录下一页USExkGO

CREATEDEFAULTunknowAS‘待定’

GOsp_bindefaultunknow,‘course.teacher’8.2默认值8.2.2实现默认值

练习2:在xk数据库中创建名为phone的自定义数据类型,在定义一个名为defph,值为‘66666666’的默认值,然后将其绑定到phone上。上一页返回目录下一页execsp_addtypephone,‘varchar(8)’

GOCREATEDEFAULTdefphAS‘66666666’

GOsp_bindefaultdefph,‘phone’

GO8.2默认值8.2.2实现默认值

3、解除默认值绑定

sp_unbindefault‘表名.列名’

|‘自定义数据类型名’4、删除默认值

DROPDEFAULT<默认值名>

上一页返回目录下一页8.2默认值8.2.2实现默认值

[例4]删除[例3]中创建的默认值。

上一页返回目录下一页USExkGO

sp_unbindefault‘course.teacher’GODROPDEFAULTunknowGO8.2默认值8.2.2实现默认值

练习3:删除练习2中创建的默认值

defph。上一页返回目录下一页

sp_unbindefault‘phone’GODROPDEFAULTdefph

GO8.3规则

8.3.1规则的概念及使用方法

规则也是实现数据完整性的方法之一,它的作用与CHECK约束类似,是用来限制输入值的取值范围的。规则与CHECK约束的不同:(1)在一列上只能使用一个规则,但可使用多个约束。

(2)规则可以用于多个列,还可用于用户自定义数据类型,而CHECK约束只能应用于它定义的列。上一页返回目录下一页8.3规则

8.3.1规则的概念及使用方法

使用规则的步骤(与默认值类似)为:(1)创建规则(2)将其捆绑到列或用户自定义数据类型上删除规则的步骤(1)解除绑定(2)删除规则

上一页返回目录下一页8.3规则

8.3.2实现规则——创建规则使用企业管理器创建规则使用Transact-SQL语句创建规则格式:

CREATERULE〈规则名〉

AS

〈规则〉绑定规则格式:sp_bindrule〈规则名〉,‘表.列’上一页返回目录下一页‘自定义数据类型名’8.3规则8.3.2实现规则

[例5]在xk数据库中创建名为creditrule的规则,并将其绑定到course表的credit列上。

上一页返回目录下一页USExkGO

CREATERULEcreditruleASx>=1ANDx<=5

GOsp_bindrulecreditrule,‘course.credit’8.3规则8.3.2实现规则——删除规则使用企业管理器删除规则使用Transact-SQL语句删除规则格式:解除绑定格式:sp_unbindrule‘表.列’|‘数据类型名’删除规则:DROPRULE〈规则名〉

上一页返回目录下一页8.3规则8.3.2实现规则

[例6]删除规则creditrule。

上一页返回目录下一页USExkGO

sp_unbindrule‘course.credit’GODROPRULEcreditruleGO

8.4用户自定义函数用户自定义函数的创建、修改、删除方法:

1、使用企业管理器2、使用T_SQL语句CREATE

ALTERDROP创建格式如下:

CREATEFUNCTION

函数名称(形参名AS数据类型,…)RETURNS返回值类型

[AS]

BEGIN

函数内容RETURN表达式

END上一页返回目录下一页8.4用户自定义函数自定义函数的调用:

格式如下:

1、dbo.

函数名称(实参1,实参2,…)

2、dbo.

函数名称实参1,实参2,…

上一页返回目录下一页需结合EXEC来使用8.4用户自定义函数创建举例:[例7]创建一个用户自定义函数power2,求任意数的平方。上一页返回目录下一页第一种调用格式CREATEFUNCTIONpower2(xint)RETURNSint

BEGINRETURNx*x

ENDGOSELECTdbo.power2(5)8.4用户自定义函数[例8]编写一个程序:输入一个日期后,返回该日期所在的季度值。

上一页返回目录下一页

CREATEFUNCTION

fnQuarter(dDATEdatetime)RETURNSchar(6)

AS

BEGIN

RETURN(DateName(q,dDATE)+’Q’+DateName(yyyy,dDATE))

ENDGO8.4用户自定义函数第一种调用方法:

DECLAREdchar(6)

SELECTd=dbo.fnQuarter(GETDate())SELECTd上一页返回目录下一页

第二种调用方法:

DECLAREdchar(6)

EXECd=dbo.fnQuarter‘2009-5-25’SELECTd8.4用户自定义函数练习4:编写一个函数:输入学号后,得到该学号所对应的姓名。

上一页返回目录下一页

CREATEFUNCTIONfnstuname(stuidchar(8))RETURNSchar(10)

ASBEGIN

DECLAREsnamechar(10)SETsname=(SELECTstunameFROMstudentWHEREstuno=stuid)RETURNsname

ENDGO

8.4用户自定义函数函数调用:输入学号后,得到该学号所对应的姓名。

上一页返回目录下一页

SELECTdbo.fnstuname(‘00000010’)GO

或:DECLAREnamechar(10)EXECname=dbo.fnstuname‘00000010’printname作业1、在xk数据库中,自定义一个电话号码数据类型,类型名为phone,所依赖的系统数据类型为char,长度为15,可以为空。2、在xk数据库中,创建名为xf的默认值,表示‘2.0‘,然后将其绑定到course表的Credit列上。然后将其删除。3、在xk数据库中创建名为phrule的规则,要求只能输入8位数字字符,并将其绑定到自定义类型phone上。4、编写一个函数:输入半径r后,计算出该半径所对应的圆的面积。上一页返回目录下一页小结(1)1、用户自定义数据类型创建:sp_addtype<新类型名>,‘系统类型’[,NULL|NOTNULL]删除:sp_droptype<类型名>2、默认值创建:CREATEDEFAULT<默认值名>AS‘值’

绑定:sp_bindefault<默认值名>‘表名.列名’|‘自定义数据类型名’

上一页返回目录下一页小结(2)解除默认值绑定:sp_unbindefault‘表名.列名’|‘自定义数据类型名’删除默认值:

DROPDEFAULT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论