关系模型及oracle对象关系数据库.ppt_第1页
关系模型及oracle对象关系数据库.ppt_第2页
关系模型及oracle对象关系数据库.ppt_第3页
关系模型及oracle对象关系数据库.ppt_第4页
关系模型及oracle对象关系数据库.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

第三章关系模型及oracle对象关系数据库,3.1关系模型和基本概念,3.2关系代数,3.3oracle对象关系数据库系统,关系数据库系统是支持关系模型的数据库系统。1970年初,IBM公司的高级研究员Dr.E.F.Codd发表论文提出了关系模型,奠定了关系数据库的理论基础。Dr.E.F.Coddproposedtherelationalmodelfordatabasesystemsin1970s.Vendors:ORACLE(9i),IBM(DB2),Microsoft(ACESSandSQLServer),Foxbase(Foxpro),Sybase,关系的定义,关系(relation):一个关系对应一张二维表元组(tuple):表中的一行即为一个元组属性(attribute):表中的一列为一个属性,给每个属性起一个名字即属性名(ID,NAME,PHONE,SALES-REP-ID),主码(primarykey):表中的某个属性组,它可以唯一确定元组。eachrowofdatainatableisuniquelyidentifiedbyaprimarykey.Itmustcontainavalue外码(foreignkey):youcanlogicallyrelateinformationfrommultipletablesusingforeignkeys.,关系模型,关系模型由关系数据结构,关系操作和关系完整性约束三部分组成。数据结构关系(二维表),它由行和列组成。关系操作常见的关系操作包括:选择select,投影project,连接join,除divide,并union,交intersection,差difference等查询query操作和增加insert,删除delete,修改update操作两大部分。完整性关系的三类完整性约束实体完整性、参照完整性、用户定义的完整性,返回,关系代数,Therelationalalgebra(关系代数)isthebasisofSQL.BasicStructureCartesianproduct(笛卡儿积)Formally,givensetsD1,D2,.DnarelationrisasubsetofD1xD2xxDn,Thusarelationisasetofn-tuples(a1,a2,an)whereeachaiDi,例如,D1=导师集合=张清玫,刘逸,D2=专业集合=计算机,信息,D3=研究生集合=李勇,刘晨,王名则D1XD2XD3=(张清玫,计算机,李勇),(张清玫,计算机,刘晨),(张清玫,计算机,王名),(张清玫,信息,李勇),(张清玫,信息,刘晨),(张清玫,信息,王名),(刘逸,计算机,李勇),(刘逸,计算机,刘晨),(刘逸,计算机,王名),(刘逸,信息,李勇),(刘逸,信息,刘晨),(刘逸,信息,王名),共12个元组。笛卡儿积可对应一张二维表。,ExampleofCartesianproduct,basicoperatorsSetintersection交Union并setdifference差(集合差)Cartesianproduct笛卡儿积Select选择Project投影Naturaljoin自然连接Division除Theoperatorstaketwoormorerelationsasinputsandgiveanewrelationasaresult.,(1)SelectOperationExample,Relationr,A,B,C,D,151223,77310,A=BD5(r),A,B,C,D,123,710,注:选择条件必须是针对同一元组中的相应属性值进行比较,Notation:p(r)piscalledtheselectionpredicateDefinedas:p(r)=t|trandp(t)Wherepisaformulainpropositionalcalculusconsistingoftermsconnectedby:(and),(or),(not)Eachtermisoneof:oporwhereopisoneof:=,.Exampleofselection:branch-name=“Perryridge”(account),(2)ProjectOperationExample,Relationr:,A,B,C,10203040,1112,A,C,1112,=,A,C,112,A,C(r),Notation:A1,A2,Ak(r)whereA1,A2areattributenamesandrisarelationname.TheresultisdefinedastherelationofkcolumnsobtainedbyerasingthecolumnsthatarenotlistedDuplicaterowsremovedfromresult,sincerelationsaresetsE.g.Toeliminatethebranch-nameattributeofaccountaccount-number,balance(account),(3)UnionOperationExample,Relationsr,s:,rs:,A,B,121,A,B,23,r,s,A,B,1213,Notation:rsDefinedas:rs=t|trortsForrstobevalid:1.r,smusthavethesamearity(等目,同元,samenumberofattributes)2.Theattributedomainsmustbecompatible(e.g.,2ndcolumnofrdealswiththesametypeofvaluesasdoesthe2ndcolumnofs)E.g.tofindallcustomerswitheitheranaccountoraloancustomer-name(depositor)customer-name(borrower),(4)SetDifferenceOperationExample,Relationsr,s:,rs:,A,B,121,A,B,23,r,s,A,B,11,NotationrsDefinedas:rs=t|trandtsSetdifferencesmustbetakenbetweencompatiblerelations.randsmusthavethesamearityattributedomainsofrandsmustbecompatible,(5)Cartesian-ProductOperation-Example(广义笛卡儿积),Relationsr,s:,rxs:,A,B,12,A,B,11112222,C,D,1010201010102010,E,aabbaabb,C,D,10102010,E,aabb,r,s,(6)Set-IntersectionOperation,Notation:rsDefinedas:rs=t|trandtsAssume:r,shavethesamearityattributesofrandsarecompatibleNote:rs=r-(r-s),Set-IntersectionOperation-Example,Relationr,s:rs,AB,121,AB,23,r,s,AB,2,Notation:rs,(7)Natural-JoinOperation,LetrandsberelationsonschemasRandSrespectively.Then,rsisarelationonschemaRSobtainedasfollows:Considereachpairoftuplestrfromrandtsfroms.IftrandtshavethesamevalueoneachoftheattributesinRS,addatuplettotheresult,wherethasthesamevalueastronrthasthesamevalueastsonsExample:R=(A,B,C,D)S=(E,B,D)Resultschema=(A,B,C,D,E)rsisdefinedas:r.A,r.B,r.C,r.D,s.E(r.B=s.Br.D=s.D(rxs),NaturalJoinOperationExample,Relationsr,s:,A,B,12412,C,D,aabab,B,13123,D,aaabb,E,r,A,B,11112,C,D,aaaab,E,s,注:(1)r,s必须含有共同属性(名,域对应相同),(2)连接二个关系中同名属性值相等的元组(3)结果属性是二者属性集的并集,但消去重名属性。,Thetajoin:rs=(rxs)isthepredicateonattributesintheschema.ThetaJoinistheextensiontotheNatureJoin.,(8)DivisionOperation,Suitedtoqueriesthatincludethephrase“forall”.LetrandsberelationsonschemasRandSrespectivelywhereR=(A1,Am,B1,Bn)S=(B1,Bn)TheresultofrsisarelationonschemaRS=(A1,Am)rs=t|tR-S(r)us(tur)注:商来自于R-S(r),并且其元组t与s的拼接被r覆盖。,rs,DivisionOperationExample,Relationsr,s:,rs:,A,B,12,A,B,12311134612,r,s,返回,Oracle体系结构(1)物理结构datafilesredologfilescontrolfilesparameterfile数据文件日志文件控制文件参数文件,datafiles,redologfiles,controlfile,parameteriles,*.dbf,*.log,Initoraid.ora,*.ctl,(2)内存结构(SGA)占OS内存的60-70%,大小可由参数文件内参数计算sharedpool(共享池),databasebuffercache(数据缓冲区),redologbuffer(重做日志缓冲区)(如以下图所示)SGA=share_pool_size+db_block_size*db_block_buffers+log_buffers,shared_pool,database_buffer_cache,redo_logbuffer,SGA,backgroundprocess,(3)instance=SGA+backgroundprocess实例=内存分配+一组后台进程如果把Oracle比作一部汽车,instance相当于汽车的发动机一样,启动oracle前提应先启动instance.,(4)session(连接)Oracle是多用户、多任务、可分布式管理的数据库,同时可有许多个用户对数据库操作。,oracle,user,user,user,session,(5)transaction(一组修改动作的集合)交易事务Eg:1、insertDDL(数据定义语句)delete例如:create,alter,drop,conmit等commit每两个DDL语句间是一个transaction2、updateDML(数据控制语句)rollback例如:Insert,Delete,Update,(6)后台进程PMON,LCLN,RECO,SMON,DBWR,LGWR,CKPT,ARCHPMON做程序的清洁工作,处理一些不正常退出的事件SMON做系统的清洁工作,执行系统出错后自动恢复工作LCKNOracle系统表级或行级加锁的进程.RECO恢复进程

温馨提示

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

评论

0/150

提交评论