数据库开发技术期末复习总结资料剖析.docx

上传人:b****0 文档编号:17153453 上传时间:2023-07-22 格式:DOCX 页数:35 大小:346.30KB
下载 相关 举报
数据库开发技术期末复习总结资料剖析.docx_第1页
第1页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第2页
第2页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第3页
第3页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第4页
第4页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第5页
第5页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第6页
第6页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第7页
第7页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第8页
第8页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第9页
第9页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第10页
第10页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第11页
第11页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第12页
第12页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第13页
第13页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第14页
第14页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第15页
第15页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第16页
第16页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第17页
第17页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第18页
第18页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第19页
第19页 / 共35页
数据库开发技术期末复习总结资料剖析.docx_第20页
第20页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据库开发技术期末复习总结资料剖析.docx

《数据库开发技术期末复习总结资料剖析.docx》由会员分享,可在线阅读,更多相关《数据库开发技术期末复习总结资料剖析.docx(35页珍藏版)》请在冰点文库上搜索。

数据库开发技术期末复习总结资料剖析.docx

数据库开发技术期末复习总结资料剖析

《数据库应用开发技术》

1、什么是数据库应用体系结构?

数据库应用系统体系结构概述:

数据库应用系统体系结构是指数据库系统中数据存储层、业务处理层、界面表示层以及网络通信之间的布局与分布关系。

数据库应用系统体系结构的三个层次:

数据库存储层:

完成对数据库中数据的各种维护操作。

业务处理层:

又称为应用层或业务逻辑层,此即是数据库应用将要处理的与用户紧密相关的各种业务操作。

界面表示层:

也称为用户界面层,主要完成输入输出数据及与用户进行交互的功能。

三级模式结构

2、C/S结构的基本概念

C/S(client/server)结构即通常所称的客户机/服务器结构,是当今世界最为流行的一种数据库应用系统结构。

在这种体系结构中,根据功能把数据库应用分为客户机应用与服务器应用两大部分,由客户机向服务器提出请求,服务器对客户机的请求做出回应。

有效的实现服务、数据的共享以及应用的分布。

C/S结构一般又根据应用功能的层次划分分为:

两层、三层及多层结构。

3、C/S结构的组成

从用户的角度看,C/S结构基本由三个部分组成:

客户机、服务器、客户机与服务器之间的连接件。

•客户机:

面向最终用户的接口或应用程序

•服务器:

监听客户机调用、处理客户机请求、存储及维护数据

•连接件:

管理及维持客户机与服务器的连接,完成数据交换及命令通讯、提供中间接口及标准

4、C/S结构分为三类:

•服务器业务逻辑结构:

客户机主要负责用户接口及基本数据验证,大部分业务逻辑及数据存储维护均由服务器完成;

•均衡负载结构:

用户接口由客户机完成,数据存储维护由服务器完成,而业务逻辑根据情况均衡分布在客户机和服务器上;

•客户机业务逻辑结构(强客户机结构):

服务器提供数据服务,业务逻辑及用户接口均由客户机完成。

5、C/S结构的优点:

降低了工作站性能需求、减少工作站网络负载、数据库易于维护。

6、C/S结构的缺点:

增加了维护数据库服务器的管理和支持人员的开销;增加了硬件的开销;增加数据库软件费用;客户端开发困难;复杂性;系统维护困难。

7、C/S结构的DBMS功能划分

C/S体系结构,RU(RAD_Unify)体系结构,EWS(ExtendedWorkstationServer)体系结构

8、B/S结构的基本概念

B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。

B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript…)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。

随着Windows98/Windows2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。

9、B/S结构的优点:

降低开发成本及开发复杂度;系统易于维护;系统易于管理;易于推广使用

10、B/S结构与C/S结构的比较

⏹硬件环境不同

⏹安全要求不同

⏹对程序架构不同

⏹软件重用不同

⏹系统维护不同

⏹处理问题不同

⏹用户接口不同

⏹信息流不同

11、PowerDesigner的模型文件:

概念数据模型(CDM),物理数据模型(PDM),业务程序模型(BPM),面向对象模型(OOM),需求模型(RQM),信息流模型(ILM)

12、什么是CDM?

☐CDM表现数据库的全部逻辑的结构,与任何的软件或数据存储结构无关。

一个概念模型经常包括在物理数据库中仍然不实现的数据对象。

它给运行计划或业务活动的数据一个正式表现方式。

☐CDM是一组严格定义的模型元素的集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性约束条件等

13、关于联系:

☐联系(Relationship)是指实体集之间或实体集内部实例之间的连接。

☐按照实体类型中实例之间的数量对应关系,通常可将联系分为4类,即一对一(ONETOONE)联系、一对多(ONETOMANY)联系、多对一(MANYTOONE)联系和多对多联系(MANYTOMANY)。

14、联系的类型:

标定联系,递归联系。

15、什么是PDM?

☐PDM定义了模型的物理实现细节。

16、CDMPDMOOM三者的转换关系:

17、从CDM生成PDM的对象规则:

CDM对象

在PDM中生成的对象

备注

实体(Entity)

表(Table)

实体属性(EntityAttribute)

列TableColumn)

主标识符(PrimaryIdentifier)

根据是否为依赖关系确定是主键或外键

标识符(Identifier)

候选键(Alternatekey)

关系(Relationship)

引用(Reference)

18、关系键的确定

在PDM中生成的键类型取决于CDM中用于定义一个关系(Relationship)的基数和依赖类型。

依赖性一对多关系;非依赖性多对多关系;非依赖性一对一关系;非依赖性一对多关系

19、数据模型概述:

数据模型是用于描述数据或信息的标记。

(数据结构、数据操作、数据上的约束)

20、常用的数据模型:

关系模型、层次模型、网状模型、面向对象的数据模型。

21、在SQL中定义关系模式:

Createtable/CreateView

22、关系数据库模式设计

三、SQL语言强化训练与T-SQL

第一节、SQL语言及其基本结构

1、SQL的概念及作用:

一种介于关系代数与关系演算之间的语言,成为关系数据库的标准语言。

功能:

查询、定义、操作、控制。

2、SQL指令构成;

3、标准SQL与个性化SQL;

第二节、SELECT训练

1、单表查询

查询出至少选修了4门课程的学号和门数

SELECTSno,COUNT(Sno)FROMScGROUPBYSnoHAVINGCOUNT(Sno)>=4

求选课在4门以上的平均成绩,不统计不及格的课程,按降序排列总成绩

SELECTSno,AVG(G)AverageFROMScWHEREG>=60GROUPBYSnoHAVINGCOUNT(*)>=4ORDERBYAverageDESCENDING

SELECTSno,AVG(G)FROMScWHEREG>=60GROUPBYSnoHAVINGCOUNT(*)>=4ORDERBY2DESCENDING

2、库函数(集函数)查询

☐求计算机系学生的平均年龄

SELECTAVG(Age)FROMStudentWHEREDept='CS'

☐求S3学生的总分和平均分

SELECTSUM(G),AVG(G)FROMScWHERESno='S3'

☐求计算机系的学生总数

SELECTCOUNT(Sno)FROMStudentWHEREDept='CS'

SELECTCOUNT(*)FROMStudentWHEREDept='CS'

☐查询共有几个系

SELECTCOUNT(*)FROMStudent?

SELECTCOUNT(Dept)FROMStudent?

SELECTCOUNT(DISTINCTDept)FROMStudent

☐求课程C1的最高分和最低分以及高低分之间的差距

SELECTMAX(G),MIN(G),MAX(G)-MIN(G)FROMScWHERECno=’C1’

3、连表查询

☐复合条件连接

⏹查询“张三”的成绩

SELECTCno,GFROMStudent,ScWHEREStudent.Sno=Sc.SnoANDSn=’张三’

⏹查询所有学生(姓名)选修的课程名和成绩

SELECTSn,Cn,GFROMStudent,Course,ScWHEREStudent.Sno=Sc.SnoANDCourse.Cno=Sc.Cno

4、子查询块嵌套查询

5、并交差集合查询

6、数据库的更新

⏹INSERTINTOR(A1,….An)VALUES(v1,v2….vn)

例6.35:

把SydneyGreenstreet添加到演员列表中去。

InsertintostarsIn(movieTitle,movieYear,starName)

Values(‘TheMalteseFalcon’,1942,’SydenyGreenstreet’);

InsertintostarsIn

Values(‘TheMalteseFalcon’,1942,’SydenyGreenstreet’);

Example6.35:

往关系Studio(name,address,presC#)添加在关系

Movie(title,year,length,inColor,studioName,producerC#)提到的但没有在studio中出现过的所有电影公司。

Insertintostudio(name)

selectdistinctstudioNamefromMoviewherestudioNamenotin(selectnamefromstudio);

⏹DELETEFROMRWHERE;

例6.37:

从关系

StarsIn(movieTitle,movieYear,starName)

删除SydneyGreenstreet出演电影nTheMaleseFalcon这一事实。

deletefromstarsInwheremovieTitle=‘ThemalteseFalcon’andmovieYear=1942andstarName=‘SydneyGreenstreet’;

⏹UpdateR

SET

Where;

每个新值赋值由一个属性、一个等号和一个表达式组成。

例6.39修改关系MovieExec(name,address,cert#,netWorth),在每个电影公司制片经理的电影制片人名字前加上称呼Pres.。

UpdatemovieExecSETname=‘Pres.’||nameWherecert#IN(selectpresC#fromstudio);

第三节、Transact-SQL概述

2、Transact-SQL应用基础:

游标

关系数据库中的操作会对整个行集产生影响。

由SELECT语句返回的行集包括所有满足该语句WHERE子句中条件的行。

由语句所返回的这一完整的行集被称为结果集。

应用程序,特别是交互式联机应用程序,并不总能将整个结果集作为一个单元来有效地处理。

这些应用程序需要一种机制以便每次处理一行或一部分行。

游标就是提供这种机制的结果集扩展。

Transact-SQL游标主要用在存储过程、触发器和Transact-SQL脚本中,它们使结果集的内容对其它Transact-SQL语句同样可用。

3、Transact-SQL应用:

游标进程

在存储过程或触发器中使用Transact-SQL游标的典型进程为:

☐声明Transact-SQL变量包含游标返回的数据。

为每一结果集列声明一个变量。

声明足够大的变量以保存由列返回的值,并声明可从列数据类型以隐性方式转换得到的数据类型。

☐使用DECLARECURSOR语句把Transact-SQL游标与一个SELECT语句相关联。

DECLARECURSOR语句同时定义游标的特征,比如游标名称以及游标是否为只读或只进特性。

☐使用OPEN语句执行SELECT语句并生成游标。

☐使用FETCHINTO语句提取单个行,并把每列中的数据转移到指定的变量中。

然后,其它Transact-SQL语句可以引用这些变量来访问已提取的数据值。

Transact-SQL不支持提取行块。

☐结束游标时,使用CLOSE语句。

关闭游标可以释放某些资源,比如游标结果集和对当前行的锁定,但是如果重新发出一个OPEN语句,则该游标结构仍可用于处理。

由于游标仍然存在,此时还不能重新使用游标的名称。

DEALLOCATE语句则完全释放分配给游标的资源,包括游标名称。

在游标被释放后,必须使用DECLARE语句来重新生成游标。

4、两种方法定义使用游标变量

5、游标的提取和滚动

6、打开或关闭游标

打开游标:

OPEN{{[GLOBAL]cursor_name}|cursor_variable_name}

关闭游标:

CLOSE{{[GLOBAL]cursor_name}|cursor_variable_name}

删除游标引用:

DEALLOCATE{{[GLOBAL]cursor_name}|

@cursor_variable_name}

7、游标示例

(1)下面的示例打开一个游标并且提取所有的行。

DECLAREEmployee_CursorCURSORFOR

SELECTLastName,FirstName

FROMNorthwind.dbo.Employees

WHERELastNamelike'B%'

OPENEmployee_Cursor

FETCHNEXTFROMEmployee_Cursor

WHILE@@FETCH_STATUS=0

BEGIN

FETCHNEXTFROMEmployee_Cursor

END

CLOSEEmployee_Cursor

DEALLOCATEEmployee_Cursor

(2)DECLARE@au_lnamevarchar(40),@au_fnamevarchar(20)

DECLAREauthors_cursorCURSORFOR

SELECTau_lname,au_fnameFROMauthorsWHEREau_lnameLIKE"B%"ORDERBYau_lname,au_fname

OPENauthors_cursor

FETCHNEXTFROMauthors_cursorINTO@au_lname,@au_fname

WHILE@@FETCH_STATUS=0

BEGIN

PRINT"Author:

"+@au_fname+""+@au_lname

FETCHNEXTFROMauthors_cursorINTO@au_lname,@au_fname

END

CLOSEauthors_cursor

DEALLOCATEauthors_cursor

第四节、存储过程

1、存储过程的概念:

是一组为了完成特定功能的SQL语句集,经编译后存储在数据库。

用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。

(在SQLServer的系列版本中存储过程分为两类:

系统提供的存储过程和用户自定义存储过程。

系统过程主要存储在master数据库中并以sp_为前缀,并且系统存储过程主要是从系统表中获取信息,从而为系统管理员管理SQLServer提供支持。

通过系统存储过程,MSSQLServer中的许多管理性或信息性的活动(如了解数据库对象、数据库信息)都可以被顺利有效地完成。

尽管这些系统存储过程被放在master数据库中,但是仍可以在其它数据库中对其进行调用,在调用时不必在存储过程名前加上数据库名。

而且当创建一个新数据库时,一些系统存储过程会在新数据库中被自动创建。

用户自定义存储过程是由用户创建并能完成某一特定功能(如查询用户所需数据信息)的存储过程。

2、用CREATEPROCEDURE命令创建存储过程

☐用CreateProcedure创建存储过程的语法规则如下:

  CREATEPROC[EDURE]procedure_name[;number]

  [{@parameterdata_type}

  [VARYING][=default][OUTPUT]

  ][,...n]

  [WITH

  {RECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTION}]

  [FORREPLICATION]

  ASsql_statement[...n]

3、CREATEPROCEDURE命令参数略解

☐procedure_name  是要创建的存储过程的名字。

☐@parameter  是存储过程的参数。

当调用该存储过程时,用户必须给出所有的参数值,除非定义了参数的缺省值。

一个存储过程至多有1024个参数。

☐Data_type  是参数的数据类型。

☐OUTPUT  表明该参数是一个返回参数。

用OUTPUT参数可以向调用者返回信息。

Text类型参数不能用作OUTPUT参数。

☐RECOMPILE  指明SQLServer并不保存该存储过程的执行计划,该存储过程每执行一次都又要重新编译。

☐ENCRYPTION  加密。

☐AS  指明该存储过程将要执行的动作。

☐Sql_statement  是任何数量和类型的包含在存储过程中的SQL语句。

4、存储过程示例

(一)使用带有复杂SELECT语句的简单过程

USEpubs

IFEXISTS(SELECTnameFROMsysobjectsWHEREname='au_info_all'ANDtype='P')

DROPPROCEDUREau_info_all

GO

CREATEPROCEDUREau_info_all

AS

SELECTau_lname,au_fname,title,pub_nameFROMauthorsaINNERJOINtitleauthortaONa.au_id=ta.au_idINNERJOINtitlestONt.title_id=ta.title_idINNERJOINpublisherspONt.pub_id=p.pub_id

GO

(二)使用带有参数的简单过程

USEpubs

IFEXISTS(SELECTnameFROMsysobjectsWHEREname='au_info'ANDtype='P')

DROPPROCEDUREau_info

GO

CREATEPROCEDUREau_info@lastnamevarchar(40),@firstnamevarchar(20)

AS

SELECTau_lname,au_fname,title,pub_name

FROMauthorsaINNERJOINtitleauthortaONa.au_id=ta.au_id

INNERJOINtitlestONt.title_id=ta.title_id

INNERJOINpublisherspONt.pub_id=p.pub_id

WHEREau_fname=@firstnameANDau_lname=@lastname

GO

☐(三)使用OUTPUT参数

USEpubs

GO

IFEXISTS(SELECTnameFROMsysobjectsWHEREname='titles_sum'ANDtype='P')

DROPPROCEDUREtitles_sum

GO

CREATEPROCEDUREtitles_sum@@TITLEvarchar(40)='%',@@SUMmoneyOUTPUT

AS

SELECT'TitleName'=titleFROMtitlesWHEREtitleLIKE@@TITLE

SELECT@@SUM=SUM(price)FROMtitlesWHEREtitleLIKE@@TITLE

GO

☐(四)使用OUTPUT游标参数

USEpubs

IFEXISTS(SELECTnameFROMsysobjectsWHEREname='titles_cursor'andtype='P')

DROPPROCEDUREtitles_cursor

GO

CREATEPROCEDUREtitles_cursor@titles_cursor

CURSORVARYINGOUTPUT

AS

SET@titles_cursor=CURSORFORWARD_ONLYSTATIC

FORSELECT*FROMtitlesOPEN@titles_cursor

GO

5、管理存储过程

(1)查看存储过程

☐通过EnterpriseManager管理工具同样可以查看存储过程的源代码

☐使用sp_helptext存储过程查看存储过程的源代码,其语法格式为:

sp_helptext存储过程名称

(2)重新命名存储过程

☐修改存储过程的名字使用系统存储过程sp_rename。

其命令格式为:

sp_rename原存储过程名,新存储过程名

(3)删除存储过程

☐删除存储过程使用drop命令,drop命令可将一个或多个存储过程或者存储过程组从当前数据库中删除。

其语法规则为:

DROPPROCEDURE{procedure}}[,…n]

(4)执行存储过程

执行已创建的存储过程使用EXECUTE|EXEC命令

6、Transact-SQL控制流语言

关键字

描述

BEGIN...END

定义语句块。

BREAK

退出最内层的WHILE循环。

CONTINUE

重新开始WHILE循环。

GOTOlabel

从label所定义的label之后的语句处继续进行处理。

IF...ELSE

定义条件以及当一个条件为FALSE时的操作。

RETURN

无条件退出。

WAITFOR

为语句的执行设置延迟。

WHILE

当特定条件为TRUE时重复语句。

7、Transact-

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2