《西北工业大学数据库复习.docx》由会员分享,可在线阅读,更多相关《西北工业大学数据库复习.docx(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、软件T程:是应用计算机科学、数学及管理科学等科学学问和技术原理,借鉴传统工程的原 则、方法来创建软件,从而达到提高质量,降低成本的目的。7数据库应用程序 生存期阶段收集的数据生成的文档数据库规划数据库项目的目标和任务数据库应用程序的任务陈述和任务目标系统定义描述主要用户视图定义数据库应用程序的分为和边界;定义 要支持的用户视图需求收集和分析用户视图和系统需求用户和系统需求说明书数据库设计验证逻辑数据库设计的用户反 映:目标DBMS提供的功能:概念/逻辑数据库设计;物理数据库设计应用程序设计用户对界面设计的反映应用程序设计DBMS选择目标DBMS提供的功能DBMS的评估和推荐建立原型用户对系统原
2、型的反响改进的用户需求和系统需求说明书实现目标系统提供的功能数据转换和加载当前数据的格式:目标DBMS 的数据导入性能测试测试结果采用的测试策略:测试结果分析运行维护性能测试结果:用户和系统需求 的增加和变化用户手册;性能分析;改变的用户需求和 系统说明书10实体/联系映射强实体创建包含所有简单属性的的关系弱实体创建包含所有简单属性的关系(主关键字等到每个 主实体的联系映射后再确定)1 :*二元联系将一方实体的主关键字处理为表示多方实体关系的 外部关键字1 : 1二元联系(a)双方强制参与组合为一个实体(b)一方强制参与将“可选”方实体的主关犍字处理为表示“强制” 方实体关系的外部关键字(c)
3、双方可选参与无进一步消息任选超类/子类联系参照超类/子类映射表* : *二元联系、复杂联系创建一个关系表示该联系,该关系包含该联系的所 有属性。参与联系的所有实体的主关键字作为该关 系的外部关键字多值属性创建一个新关系表示多值属性,并将主实体的主关 键字作为该关系的外部关健字丈夫妻子子女第一个第三个李基王芳李健刘玉张春张峰家庭1丈夫妻子子女李基王方李僮张同刘玉精张同刘玉分为不同列家庭户tud呼呼一二复合属性 多值属性sid- na.ctelephoneTenrolment. Inamefname.*enomajor1JonWrrah2555-1234101No108Yes2SmithJohn3
4、555-4321105No34BorwnWhiteHarryEdward23555-1122-555-3344* 101一M二二 102b 105Yes FNo.四、候选码、主码、外码、主属性与非主属性候选码(Candidate Key)/候选键关系中的一个属性组,其值能唯一标识一个元组,若从该属性组中去掉任何一个属性,它就不具有这一性质了例如:“同学(S#,Sname,Sage,Sclass),S#就是一个候选码“选课(S#, C#, Sname, Cname, Grade)”,(S#,C#)联合起来是一个候选码关系中有很多组候选码,例如:同学(S#, Sname, Sage, Sclass
5、, Saddress)其 中属性S#是候选码,属性组(Sname, Saddress)也是候选码(同名同地 址的两个同 学是不存在的)主码(PrimaryKey)/主键当有多个候选码时,可以选定一个作为主码。DBMS以主码为主要线索管理关系中的各个元组。主属性与非主属性 包含在任何一个候选码中的属性被称作主属性,而其他属 性被称作非主属性 如“选课中的S# , C#为主属性,而Sname, Cname, Grade 则为非主属性;最简洁的,候选码只包含一个属性 最极端的,全部属性构成这个关系的候选码,称为全码(All-Key)。 比如:关系“老师授课” (T#,C#) 中的候选码(T#,C#)
6、就是全码。五、完整性约束空值:不知道、不存在或无意义的值;在进行关系操作时,有时关系中的某属性值在当前是填不上的比如档案中有“生日不详”、“下落不明”、“日程尚待公布”等数据库中有了空值,会影响很多方面,如影响聚集函数运算的正确性,不能参 加算术、比较或规律运算等例如:“3 +?”结果是多少呢?例*?”结果是多少呢? “?and (A=A)”结果 乂是多少呢?再例如,一个班有30名同学,如全部同学都有成果,则可求出平 均成果;假如有一个同学没有成果,怎样参加平均成果的计算呢,是当作0, 还是当作1()()呢?还是不考虑他呢?有空值的时候是需要特殊处理的,要特殊留意。实体完整性关系的主码中的属性
7、值不能为空值;元组通过主码来唯一标识的,若主码为空,则无法区分元组参照完整性外码要么为空,要么参照相应的主码空值,表示该同学尚未分到任何系中,若非空值,该同学不行能分到一个不存在的系中 用户自定义完整性 用户针对具体的应用环境定义的完整性约束条件假如添加元组失败,可能是由于不满意此项原则第四章关系代数并、差、交等,需满意“并相容性”(1)属性数目必需相同;(2)对于任意i,第i个属性的域相同并一“或者或者”差一“是但不含”交一“并且”笛卡儿积:田是n度关系,S是m度关系,关系R的基数x,S的基数y)RxS的属性个数=n+mRxS的元组个数二 xXy选择:条件的书写留意优先级,作用于行投影:投影
8、后重复元组应去掉。作用于列连接:等值连接,自然连接(有相同属性)外连接:左外连接,右外连接,全外连接除法一 “查询全部的/全部的” (R除S,前提:S包含于R) 结果属性为R属性去掉全部S属性结果元组为与S中任一元组组合的结果都在R中的元组 留意:选择出主要的属性做除法第十一章数据建模:思想与方法重点与难点理解E-R模型进行数据建模的基本思想,娴熟把握E-R模型的Crow s foot 表达方法娴熟运用Crows fool方法进行数据建模,即建模训练定义定义RKW/DatabaM开发相互有关我关系的故就修隼沪与控制不用用户使用的Q成基功向应用&序RKA务处理DBAPm只有count不忽视nul
9、lo弱实体类型必需与标识全部者参加一对多关系类型。弱实体在确定全部者关系中有完全参加,而确定全部者在确定全部者关系中有部分参加。何时可能存在风扇陷阱?何时可能发生裂缝陷阱?假如两个或多个1:*关系从同一实体中绽开,则可能存在风扇陷阱。当存在一个或多个最小多重性为零的关系(即可选参加)时,可能会消失鸿沟陷阱,形成相 关实体之间的路径的一部分扇形陷阱模型表示实体类型之间的关系,但某些实体消失之间的路径不明确。 An Example of a Fan TrapStaffHasentitiesrelationshipDivisionOperatesentitiesrelationshipBranch
10、entitiesAt which branch office does staff number SG37 work? An Example oi a Fan I rapStaffV HasDivision1.* 1.1StaffV HasDivision1.* 1.1Operates* 13.Branch Restructuring ER model to remove Fan Trap函数依靠StuNo-MajorNo和MajorNoDeptN。可以推导出函数依靠StuNo-DeptNoStaff HasBranchxr.cio:狼二XJWt.ll19” 09*3才尔1 91111102
11、r*i1WI.Mim.w2标准结构的意义:规律数据独立性当概念模式变化时,可以不转变外部模式(只需转变E-C M叩ping),从而无需转变应用程序物理数据独立性当内部模式变化时,可以不转变概念模式(只需转变C-I Mapping),从而不转变外部模式其次章数据模型1模式与模式的结构:数据模型规定模式统一描述方式的模型,包括:数据结构、操作和约束数据模型是对模式本身结构的抽象,模式是对数据本身结构形式的抽象比如:关系模型:全部模式都可为抽象表(Table)的形式数据结构,而每一个具体的 模式都是拥有不同列名的具体的表。对这种表形式的数据有哪些操作和约束模式1:学生暨记表(学号char(8)f姓名
12、关系模型:char(10),性别Char(2)f出生年月Table/Relation datetime,入学日期 Datetime,家庭住址Relation CalculationChar(40)Constraints about Table模式2 :学生成绩单(学号char(8)f姓名 char(10)f ffiSS Char(6)f iSg char(40)f 学期 Char(4), Number)疑问;(关系模型描述的究竟是实例之间的关系,还)2三大经典数据模型关系模型:表的形式组织数据层次模型:树的形式组织数据网状模型:图的形式组织数据第三章关系模型及其基本概念学习目标:Tabic如何
13、描述,有哪些操作、结果是什么、有哪些约束等?一、关系模型1三个要素(具体内容在后面叙述)数据结构:关系/表数据操作(并,交,差,笛卡尔积,选择,,投影,连接)完整性约束(实体完整性、参照完整性和用户自定义的完整性)关系运算:关系代数和关系演算;关系代数:基于集合的运算(ISBL)关系演算元组演算言(Ingres系统的QUEL)和域演算(QBE) 一组域DI, D2,Dn的笛卡尔积的子集笛卡尔积中具有某一方面意义的那些元组被称作一个关系三、关系的特性 列是向质:即每一列中的重量来自同一域,是同一类型的数据不同的属性可来自同一个域,不同的属性必需赐予不同的属性名 列位置互换性:区分哪一列是靠列名行位置互换性:区分哪一行是靠某一或某几列的值(关键字/键字/码字)关系是以内容(名字或值)来区分的,即使属性位置转变也是同种关系理论上,关系的任意两个元组不能完全相同。(集合的要求集合内不能有相同 的两个元素); 现实应用中,表(Table)可能并不完全遵守此特性。元组可能相 同(元组相同是指两个元组的每个重量都相同) 属性不行再分特性:又被称为关系第一范式