




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第1章
關系數據庫設計基礎學習目標LEARNINGTARGET了解數據庫系統在相關領域的應用;理解與數據庫相關的基本概念及數據庫技術的發展;了解主流的關系型數據庫。知識目標能力目標能掌握關系數據庫設計的基本步驟。思政目標通過組織學生學習和討論大數據時代數據庫技術的應用現狀和前景,引導學生養成“愛專業、愛職業、愛事業”的職業精神,樹立“強國有我”的職業責任意識。主要內容MAINCONTENTS1.1數據庫系統的應用1.2數據庫技術的發展
*1.3數據庫相關概念1.4主流的關系型數據庫1.5關系數據庫設計數據庫系統的應用1.1數據庫系統的應用數據庫能做什么?存儲大量數據,方便檢索和訪問保持數據信息的一致、完整共享和安全通過組合分析,產生新的有用信息數據庫系統的應用應用案例1:銀行業務系統ATM取款業務客戶ATM機銀行數據庫信用卡及密碼核對密碼返回處理結果顯示密碼核對結果提示下步操作第一步:檢驗密碼數據庫系統的應用應用案例1:銀行業務系統ATM取款業務客戶ATM機銀行數據庫信用卡及取款金額返回處理結果核對帳戶余額及信用額度拒絕或現金第二步:取款數據庫系統的應用應用案例2:鐵路售票系統鐵路售票業務客戶售票窗口售票數據庫購票信息及現金查詢余票更改數據庫返回處理結果
出票或退錢數據庫系統的應用應用案例3:超市購物系統超市購物業務客戶收銀程序
數據庫購買信息(條形碼)查詢商品價格返回價格
價格信息付帳修改并檢查庫存出貨供應商訂單數據庫系統的應用數據庫系統在現實生活中還有哪些應用?想一想,找一找數據庫技術的發展1.2數據庫技術的發展數據模型是數據庫系統的核心和基礎。數據庫技術依據數據模型的進展可分為三個發展階段:初級階段:第一代的網狀、層次數據庫系統;中級階段:第二代的關系數據庫系統;高級階段:新一代的數據庫系統。數據庫技術的發展1.初級階段——第一代數據庫系統層次和網狀模型都是格式化模型。它們從體系結構、數據庫語言到數據存儲管理均具有共同特征,是第一代數據庫系統。1)第一代數據系統的代表1969年由IBM公司研制的層次模型數據庫管理系統IMS。2)第一代數據庫系統的特點①支持三級模式(外模式、模式、內模式)的體系結構。模式之間具有轉換(或映射)功能。②用存儲路徑來表示數據之間的聯系。這是數據庫系統和文件系統的主要區別之一。數據庫不僅存儲數據,而且存儲數據之間的聯系。數據之間的聯系在層次和網狀數據庫系統中都是用存取路徑來表示和實現的。③獨立的數據定義語言。層次數據系統和網狀數據庫系統有獨立的數據定義語言,用以描述數據庫的三級模式以及相互映像。④導航的數據操縱語言。層次和網狀數據庫的數據查詢和數據操縱語言是一次一個記錄的導航式的過程化語言。數據庫技術的發展2.中級階段——第二代數據庫系統支持關系數據模型的關系數據庫系統是第二代數據庫系統。1970年,IMB公司的研究員提出了數據庫的關系模型,開創了數據庫關系方法和關系數據理論的研究,為關系數據庫技術奠定了理論基礎。20世紀70年代是關系數據庫理論研究和原型開發的時代。1)奠定了關系模型的理論基礎,給出了人們一致接受的關系模型的規范說說明。2)研究了關系數據語言,包括關系代數、關系演算、SQL及QBE等,確立了SQL為關系數據庫語言標準。3)研制了大量的關系數據庫管理系統原型,攻克了系統實現中查詢優化、事務管理、并發控制、故障恢復等一系列關鍵技術。這不僅大大豐富了數據庫管理系統實現技術和數據庫理論,更促進了數據庫的產業化。數據庫技術的發展3.高級階段——新一代數據庫系統二代數據庫系統的數據模型雖然描述了顯示世界數據的結構和一些重要的相互聯系,但是仍然不能捕捉和表達數據對象所具有的豐富而重要的語義。新一代數據庫系統以更豐富多樣的數據模型和數據管理功能為特征,滿足廣泛復雜的新應用的要求。第三代DBMS應具有的三個基本特征(三條基本原則):1)第三代數據庫系統應支持數據管理、對象管理和知識管理。除提供傳統的數據管理服務外,第三代數據庫系統將支持更加豐富的對象結構和規則,應集數據管理、對象管理和知識管理為一體。2)第三代數據庫必須保持或繼承第二代數據庫系統的技術。第三代數據庫系統應繼承第二代數據庫系統已有的技術;保持第二代數據庫系統的非過程化數據存取方式和數據獨立性,這不僅能很好的支持對象管理和規則管理,而且能更好地支持原有的數據管理,支持多數用戶需要的查詢等。3)第三代數據庫必須對其他系統開放。數據庫系統的開放行表現在支持數據庫語言標準;在網絡上支持標準網絡協議;系統具有良好的可移植性、可連接性、可擴展性和可互操作性等。數據庫相關概念1.3數據庫相關概念
在數據庫概念中,實體是所有客觀存在的、可以被描述的事物,例如計算機、人、課本、桌子甚至課本的結構,都屬于客觀存在的,可以被描述的,這些都稱為實體。1.實體和記錄
數據庫中存儲的數據,每一“行”實際上對應一個實體,這樣的一行,在數據庫中,通常叫做“一條記錄”。
表中的每一個輸入項,叫做“列”,學號、姓名、性別、班級、年齡都是列名,在數據庫中,通常叫做“字段”。數據庫相關概念2.數據庫與數據表數據庫就是“數據”的“倉庫”是邏輯上相關的可共享的數據集合數據庫由表、關系以及操作對象組成數據存放在表中數據是存在數據表中表由一條條記錄組成每條記錄由一個個字段值組成數據庫示例數據庫相關概念3.數據庫管理系統數據庫管理系統(DataBaseManagementSystem,DBMS)是一種系統軟件,由一個互相關聯的數據集合和一組訪問數據的程序構成。這個數據集合通常稱作數據庫,其中包含了有用的數據信息,數據庫管理系統的基本目標是要提供一個可以方便有效地存取數據庫信息的環境。數據庫管理系統的主要功能是維護數據庫,并有效地訪問數據中各個部分的數據。數據庫相關概念4.數據庫系統數據庫系統(DatabaseSystem,DBS)是指一個具體的數據庫管理系統軟件和用它建立起來的數據庫,通常由系統軟件、數據庫和數據庫管理員組成。帶有數據庫的計算機系統。其包括5部分:
數據庫(DB)數據庫管理系統(DBMS)應用(Application):使用數據庫的應用程序。人員:包括普通用戶和數據庫管理員(DatabaseAdministrator,DBA)硬件數據庫相關概念4.數據庫系統選課應用程序查詢DBMS選課數據庫元數據數據庫系統學生教師圖數據庫管理系統與數據庫的關系定義、創建、維護限制訪問數據庫相關概念4.數據庫系統圖數據庫管理系統與數據庫的關系馬蘭A004楊可A003劉開泰B008李新愛B007數據庫檢索數據插入數據更新數據刪除數據數據庫管理系統-DBMS數據庫相關概念“人員”作為數據庫系統中的重要組成部分,針對四類“人員”,你覺得不同的“人員”需要具備怎樣的素質?想一想主流的關系型數據庫1.4主流的關系型數據庫主流的關系型數據庫有Access、SQLServer、Oracle、DB2、MySQL等,每種數據庫的語法、功能和特性也各具特色。重點介紹以下三種關系型數據庫。AccessSQLServerOracle主流的關系型數據庫1.AccessMicrosoftOfficeAccess是由微軟(Microsoft)公司發布的一款關系數據庫管理系統。它結合了MicrosoftJetDatabaseEngine和圖形用戶界面兩項特點,是MicrosoftOffice的系統程序之一。(1)優勢MicrosoftOfficeAccess是一個把數據庫引擎的圖形用戶界面和軟件開發工具結合在一起的數據庫管理系統,其主要優勢表現在如下幾個方面:①存儲方式簡單,易于維護管理。②面向對象。③界面友好,易操作。④集成環境、處理多種數據信息。⑤支持廣泛,易于擴展,彈性較大。主流的關系型數據庫AccessMicrosoftOfficeAccess是由微軟(Microsoft)公司發布的一款關系數據庫管理系統。它結合了MicrosoftJetDatabaseEngine和圖形用戶界面兩項特點,是MicrosoftOffice的系統程序之一。(2)不足之處①數據庫過大時性能下降明顯。一般ACCESS數據庫達到100M左右的時候性能就會開始下降,例如:當訪問使用Access作為數據庫的網站時,訪問人數過多時容易造成IIS假死,過多消耗服務器資源。②容易出現各種因數據庫刷寫頻率過快而引起的數據庫問題。③ACCESS數據庫安全性比不上其他類型的數據庫。主流的關系型數據庫2.SQLServerSQLServer也是一種關系型數據庫管理系統,是一個全面的數據庫平臺,使用集成的商業智能(BI)工具提供了企業級的數據管理。SQLServer的主要特點如下:(1)真正的客戶機/服務器體系結構。(2)圖形化用戶界面,使系統管理和數據庫管理更加直觀、簡單。(3)高性能設計,可充分利用WindowsNT的優勢。(4)系統管理先進,支持Windows圖形化管理工具,支持本地和遠程的系統管理和配置。(5)強壯的事務處理功能,采用各種方法保證數據的完整性。(6)易用性、適合分布式組織的可伸縮性、用于決策支持的數據倉庫功能、與許多其他服務器軟件緊密關聯的集成性、良好的性價比等。(7)為數據管理與分析帶來了靈活性,允許單位在快速變化的環境中從容響應,從而獲得競爭優勢。從數據管理和分析角度看,將原始數據轉化為商業智能和充分利用Web帶來的機會非常重要。(8)支持對稱多處理器結構、存儲過程、ODBC,并具有自主的SQL語言。主流的關系型數據庫3.OracleOracle數據庫是目前世界上使用最為廣泛的數據庫管理系統,作為一個通用的數據庫系統,它具有完整的數據管理功能;作為一個關系數據庫,它是一個完備關系的產品;作為分布式數據庫,它實現了分布式處理功能。Oracle有如下特點:(1)名副其實的大型數據庫。(2)跨平臺能力。(3)分布式數據庫。(4)卓越的安全機制。(5)共享SQL和多線索服務器體系結構。(6)支持客戶機/服務器方式,支持多種網絡協議。數據庫相關概念除了上述介紹的三種關系型數據庫,還有其他哪些關系型數據庫?想一想關系數據庫設計1.5關系數據庫設計數據庫設計是指在給定的環境下,創建一個性能良好,能滿足不同用戶使用要求,又能被選定的DBMS所接受的數據模式。從本質上講,數據庫設計是將數據庫系統與現實世界相結合的一個過程。關系數據庫設計的目標是:對于給定的一個應用領域,建立一個性能良好的、能滿足不同用戶在數據存儲和應用系統開發時需求的、又能被選定的DBMS所接受的數據庫模式。按照上述關系數據庫模式建立的數據庫,應能夠反映特定應用領域中信息及信息之間的聯系;能夠進行有效的信息存儲;能夠方便地執行用戶的各種信息檢索和處理操作;并且有利于關系數據庫的維護和管理。關系數據庫設計幾十年來,人們經過不斷的努力和探索,提出了各種數據庫設計方法。其中比較著名的有新奧爾良(NewOrleans)方法,這種方法將關系數據庫設計分為4個階段。需求分析收集信息分析整理概念設計概念模式E-R圖邏輯設計關系模式關系規范物理實施物理結構評價效率本章小結數據庫系統在現實中的應用,以及應用前景;數據庫技術的產生和發展背景;數據庫的相關概念,如數據庫與數據表、數據庫管理系統與數據庫系統等;主流的關系型數據庫,如Access、SQLServer和Oracle數據庫;關系數據庫設計的過程。思政拓展從課本上闡述的關于“大數據背景下數據庫技術的應用”得到什么啟發?作為未來有可能從事數據庫崗位的你,對數據庫技術在大數據領域的應用有何見解?議一議謝謝聆聽!第2章
實體-聯系模型工業和信息化部“十四五”規劃教材
浙江省高職院?!笆奈濉笔着攸c教材《關系數據庫設計與應用》(工作手冊式)
配套課件學習目標LEARNINGTARGET掌握實體-聯系模型中所涉及的基本概念;掌握實體-聯系的表示方法;熟知E-R模型設計的步驟。知識目標能力目標能判斷實體-聯系模型中的碼;能應用E-R符號繪制E-R圖;能進行簡單的E-R模型設計。思政目標培養學生嚴謹、細致的做事態度;讓學生了解數據庫從業者應具備的職業道德和職業操守。主要內容MAINCONTENTS2.1實體-聯系模型的基本要素2.2實體-聯系圖表示2.3E-R模型的設計*2.4E-R模型設計綜合實例實體-聯系模型的基本要素1實體-聯系模型的基本要素實體(Entity):客觀存在并可相互區別的事物。實體集(EntitySet):同類型實體的集合稱為實體集。實體型(EntityType):用于描述同一實體集共同特征的實體名及其屬性名的集合。實體值(EntityValue):實體集中的某個實體的值即為實體值。屬性(Attribute):屬性是指實體的特征和性質。域(Domain):屬性的取值范圍稱為屬性的域。聯系(Relationship):反映實體內部的聯系,或實體之間的聯系。聯系集(RelationshipSet):是指同類聯系的集合。角色(Role):實體在聯系中的作用稱為角色。度(Degree):參與聯系集的實體集的數目成為聯系集的度。碼(Key):唯一標識實體的屬性或屬性集稱為碼。★實體-聯系模型的基本要素實體(Entity):客觀存在并且可區別于其它對象的事物。實體可以是具體的對象。如:一所學校、一個班級、一位學生等。實體可以是抽象的事件、抽象的概念等對象。如:一次考試、一份貸款、一個賬戶等。實體可以是有形的對象。如:一個學生、一張課桌等。實體可以是無形的對象。如:思想品德的好與壞、性格等。實體與實體集實體集(EntitySet):同類型實體的集合稱為實體集。所有的大學生構成一個“學生”實體集。所有的課程構成一個“課程”實體集。所有的教師構成一個“教師”實體集。大千世界思考題:請觀察教室里有哪些實體集?實體-聯系模型的基本要素實體與實體集學號姓名性別出生年月籍貫2021210021江星男2002-12-01內蒙古2021210022趙盼男2002-10-12河南2021210023劉鵬男2002-09-10浙江2021210024李鑫女2003-04-10江西實體學生實體集例子:以學生實體為例實體-聯系模型的基本要素實體型(EntityType):即實體名及其屬性名的集合。實體型和實體值學號姓名性別出生年月籍貫2021210021江星男2002-12-01內蒙古2021210022趙盼男2002-10-12河南2021210023劉鵬男2002-09-10浙江2021210024李鑫女2003-04-10江西實體型學生(學號,姓名,性別,出生年月,籍貫)學生實體-聯系模型的基本要素實體值(EntityValue):實體集中的某個實體的值即為實體值。
實體型和實體值學號姓名性別出生年月籍貫2021210021江星男2002-12-01內蒙古2021210022趙盼男2002-10-12河南2021210023劉鵬男2002-09-10浙江2021210024李鑫女2003-04-10江西請分析上圖中有幾個實體值?4個實體值實體-聯系模型的基本要素屬于同一實體集的實體,它們的實體型是相同的,但實體值是不同的。實體型和實體值學號姓名性別出生年月籍貫2021210021江星男2002-12-01內蒙古2021210022趙盼男2002-10-12河南2021210023劉鵬男2002-09-10浙江2021210024李鑫女2003-04-10江西實體型相同實體值各不相同即:代表4個不同的學生學生實體-聯系模型的基本要素屬性(Attribute):屬性是指實體的特征和性質。一個實體可以由若干個屬性來刻畫。如:學生的屬性有“學號、姓名、性別、出生年月、籍貫”等。合同的屬性有“甲方、乙方、合同名稱、公證部門”等。屬性和域域(Domain):屬性的取值范圍稱為屬性的域。如:學生(學號,姓名,性別,出生年月)學號:是指定長度。姓名:是指特定長度的字符串。性別:只能是只有兩種狀態。學號姓名性別出生年月籍貫2021210021江星男2002-12-01內蒙古2021210022趙盼男2002-10-12河南2021210023劉鵬男2002-09-10浙江2021210024李鑫女2003-04-10江西指定長度特定字符串兩種狀態思考題:請分析“成績”屬性的值域?實體-聯系模型的基本要素1.簡單屬性和復合屬性。簡單屬性:不能劃分為更小的部分。復合屬性:是可以再劃分為更小的部分。屬性類型曾用第一個名姓名曾用第二個名現在姓名復合屬性成分屬性地址街道城市省國家街道名街道號實體-聯系模型的基本要素屬性類型2.單值屬性和多值屬性。單值屬性如一個學生只對應一個學號,所以“學號”就是單值屬性。多值屬性:如學生檔案中有一個“聯系電話”屬性,而每個學生都有大于等于一個號碼,這樣的屬性就是多值屬性。實體-聯系模型的基本要素屬性類型3.派生屬性。這類屬性的值可以從其他相關屬性或實體派生出來。如:學生實體集有一個“出生年月”,表示學生何時出生,我們可以通過該屬性的值計算出年齡屬性的值,因此年齡就是派生屬性。而出生年月就是基屬性,派生屬性的值不存儲,但在需要是可以被計算出來。出生年月年齡基屬性派生屬性思考題:能否將年齡作為基屬性,出生年月作為派生屬性?實體-聯系模型的基本要素屬性類型4.NULL屬性★。當我們暫時不知道某個屬性的值,或屬性值尚未確定時,可以將屬性值設為空(NULL)。我是剛分配來的新教師,還沒有參加過職稱評定,我的職稱屬性是NULL。實體-聯系模型的基本要素聯系(Relationship):反映實體內部的聯系,或實體之間的聯系。每個聯系都有一個名字,每個聯系都可以具有描述性屬性。聯系與聯系集序號課程名稱授課教師學分1電子技術張三42大學英語李四33高等數學趙武44關系數據庫林燕4學生課程例子:學號姓名性別出生年月籍貫2021210021江星男2002-12-01內蒙古2021210022趙盼男2002-10-12河南2021210023劉鵬男2002-09-10浙江2021210024李鑫女2003-04-10江西江星學習高等數學實體-聯系模型的基本要素聯系與聯系集聯系集(RelationshipSet):是同類聯系的集合。序號課程名稱授課教師學分1電子技術張三42大學英語李四33高等數學趙武44關系數據庫林燕4學號姓名性別出生年月籍貫2021210021江星男2002-12-01內蒙古2021210022趙盼男2002-10-12河南2021210023劉鵬男2002-09-10浙江2021210024李鑫女2003-04-10江西學生課程例子:“學習”聯系集實體-聯系模型的基本要素角色實體在聯系中的作用稱為角色。實體集內部的聯系要標明角色。如“學生”內部的“管理”。度參與聯系集的實體集的數目稱為聯系集的度。如“學習”聯系集的度是2。思考題:電影公司跟一位影星簽約一部電影,請問“簽約”聯系集的度?實體-聯系模型的基本要素聯系主要有以下類型:一對一聯系(1:1)一對多聯系(1:n)多對一聯系(m:1)多對多聯系(m:n)聯系的類型實例實體-聯系模型的基本要素一對一聯系(1:1):設有實體型A與實體型B,如果A中的1個實體,至多與B中的1個實體關聯,反過來,B中的1個實體至多與A中的1個實體關聯,稱實體型A與實體型B是一對一聯系類型。記作(1:1)。聯系的類型a1a2a3a4Ab1b2b3b4B一對一聯系如:班級與班長之間的聯系學校與校長之間的聯系部門與部門經理之間的聯系每個A對應著一個B每個B對應著一個AA
一對一B實體-聯系模型的基本要素一對多聯系(1:n):設有實體型A與實體型B,如果A中的1個實體,與B中的n個實體關聯(n≥0),反過來,B中的1個實體至多與A中的1個實體關聯,稱實體型A與實體型B是一對多聯系類型。記作(1:n)。聯系的類型a1a2a3Ab1b2b3b4Bb5一對多聯系如:班級與學生之間的聯系學校與教職工之間的聯系部門與部門員工之間的聯系每個A對應著多個B每個B對應著一個AA
一對多
B實體-聯系模型的基本要素多對一聯系(m:1):設有實體型A與實體型B,如果A中的m個實體(m≥0),與B中的1個實體關聯,反過來,B中的1個實體,與A中的m個實體關聯,稱實體型A與實體型B是多對一聯系類型。記作(m:1)。聯系的類型b1b2b3Ba1a2a3a4Aa5多對一聯系每個A對應著一個B每個B對應著多個AA
多對一
B如:學生與班級之間的聯系教職工與學校之間的聯系部門員工與部門之間的聯系實體-聯系模型的基本要素多對多聯系(m:n):設有實體型A與實體型B,如果A中的1個實體,與B中的n個實體關聯(n≥0),反過來,B中的1個實體,與A中的m個實體關聯(m≥0),稱實體型A與實體型B是多對多聯系類型。記作(m:n)。聯系的類型a1a2a3a4Ab1b2b3b4B多對多聯系每個A對應著多個B每個B對應著多個AA
多對多
B如:課程與學生之間的聯系教師與課程之間的聯系練習1:判斷聯系類型每位教師教授一位學生,每個學生被多位教師教。每位教師教授多位學生,每個學生被一位教師教。每位教師教授多位學生,每個學生被多位教師教。每位教師教授一位學生,每個學生被一位教師教。教師與學生的聯系教師m:1學生教師1:n學生教師m:n學生教師1:1學生√實體-聯系模型的基本要素5分鐘動一動實體-聯系模型的基本要素碼碼(Key):用于區分實體或聯系的屬性或屬性組,也稱為關鍵字(key)。例:學生(學號,姓名,性別,出生年月,籍貫),請分析學生實體集的碼.學號姓名性別出生年月籍貫100101江星男2001-12-01內蒙古100102趙盼男2000-10-12河南100103劉鵬男2001-09-10浙江100104李鑫女2001-04-10江西學號?姓名?出生年月?學號+姓名?√√實體-聯系模型的基本要素碼思考題:選課(學號,課程號,成績)關系中的碼?1.
實體集中的主碼也稱為主鍵或主關鍵字主碼只有一個,用于在同一實體集中區分不同實體主碼應選擇那些從不或極少變化的屬性例:電腦可由品牌、規格、價格、出廠日期屬性來描述,請問電腦的碼如何設計?以上四個屬性均不能作為關鍵字,若增加“編號”屬性,則“編號”可作為關鍵字。學號課程號成績1156218712652290實體-聯系模型的基本要素2.聯系集中的碼(依賴于聯系類型)。碼聯系類型主碼A
一對一
BA
一對多
BA
多對一
BA
多對多
B任取實體A或B的主碼取實體B的主碼(取多)取實體A的主碼(取多)取實體A和B的主碼共同組成實體-聯系模型的基本要素例子:“教授”聯系中的碼碼A:教師(教師號,姓名,性別,年齡,職稱)B:學生(學號,姓名,性別,班級,年齡)一個教師教授一位學生,一個學生由一位教師教授“教授”聯系類型是:“教授”聯系的主碼:教師號或者學號:教師
11
學生實體-聯系模型的基本要素例子:“教授”聯系中的碼碼A:教師(教師號,姓名,性別,年齡,職稱)B:學生(學號,姓名,性別,班級,年齡)思考題:請判斷下面情況中“教授”聯系的碼?①一位教師教授多位學生,一位學生由一位教師教授②一位教師教授一位學生,一位學生由多位教師教授③一位教師教授多位學生,一位學生由多位教師教授實體-聯系圖表示2實體-聯系圖表示E-R圖中的符號E-R圖的繪制(Visio軟件,processon在線畫圖)兩種特殊情況的E-R圖(難點)通常,用一種稱為實體-聯系圖(Entity-RelationshipDiagram,E-R圖)的直觀圖示方式描述實體-聯系模型(也稱E-R模型)。1.E-R圖中的符號EE-R圖的中常用的符號(常見符號詳見P23)實體集A屬性R聯系集A主碼連接實體與聯系之間的橋梁實體-聯系圖表示實體-聯系圖表示與學生和課程相對應的E-R圖姓名年齡性別班級學號學生學習課程課程名周課時數課程號教師實體集聯系集連接實體與聯系之間的橋梁屬性主碼1.E-R圖中的符號實體-聯系圖表示聯系的表示方法一箭頭方(→)表示“一”線段方(—)表示“多”R一對一聯系R多對一聯系R多對多聯系1.E-R圖中的符號實體-聯系圖表示聯系的表示方法一姓名年齡性別班級學號學生學習課程課程名周課時數課程號教師學生與課程之間是“1:n”的關系1.E-R圖中的符號實體-聯系圖表示一對一聯系(1:1)一對多聯系(1:n)多對一聯系(m:1)多對多聯系(m:n)實體集A聯系集實體集B111:1聯系實體集A聯系集實體集Bmnm:n聯系實體集A聯系集實體集B1n1:n聯系實體集A聯系集實體集Bm1m:1聯系E-R圖中聯系的表示:在直線靠近實體的那端標上“1”或“m”或“n”。聯系的表示方法二1.E-R圖中的符號實體-聯系圖表示與學生和課程相對應的E-R圖姓名年齡性別班級學號學生學習課程課程名周課時數課程號教師nm學生與課程之間是“多對多”的關系聯系的表示方法二1.E-R圖中的符號實體-聯系圖表示注:在"實心線段"旁標上聯系的類型(1:1,1:n或m:n)。符號含義實體集,一般是名詞屬性,一般是名詞聯系集,一般是動詞連接實體型、聯系之間的橋梁部門屬于員工1n部門代碼部門名員工號姓名性別職務2.E-R圖的繪制實體-聯系圖表示兩個實體集之間的一對一的聯系的E-R圖繪制方法【例1】假設某學院有若干個系,每個系只有一個主任,請為系和主任設計E-R模型。確定實體集及其屬性:實體集是主任、系。屬性設計:主任——編號,姓名,年齡,學歷系——系編號,系名2.E-R圖的繪制確定聯系集:聯系名為“管理”,聯系類型是1:1。解:描述主任和系之間的E-R圖,如下圖所示1管理主任姓名年齡學歷編號系系編號系名1實體-聯系圖表示2.E-R圖的繪制【例2】假設在某倉庫管理系統中,有兩個實體集:倉庫和商品。倉庫用倉庫號、地點和面積來標識;商品用商品號、商品名和價格來標識。倉庫用來存放商品,且規定一類商品只能存放在一個倉庫中,一個倉庫可以存放多件商品,需統計倉庫存放商品的數量。兩個實體集之間的一對多的聯系的E-R圖繪制方法實體-聯系圖表示2.E-R圖的繪制確定實體集和屬性:確定聯系集和類型:
聯系名:存放,類型:1:n倉庫——倉庫號,地點,面積商品——商品號,商品名,價格思考題:商品數量是實體集?還是屬性?解:描述倉庫和商品之間的E-R圖,如下圖所示1存放倉庫地點面積倉庫號商品數量n商品商品號價格商品名實體-聯系圖表示2.E-R圖的繪制兩個實體集之間的多對多的聯系的E-R圖繪制方法【例3】假設在某教務管理系統中,一個教師可以上多門課,一門課也可以由多個老師上,需評價教師的授課質量。實體-聯系圖表示2.E-R圖的繪制確定實體集和屬性:確定聯系集和類型:
教師——教師號,教師名,職稱課程——課程號,課程名,班級教師與課程存在“講授”關系在“講授”聯系中應能反映出教師的授課質量解:描述教師和課程之間的E-R圖,如下圖所示m講授教師教師名職稱教師號授課質量n課程課程號班級課程名實體-聯系圖表示2.E-R圖的繪制實體-聯系圖表示課堂練習1假設一個商店有多個顧客購物,一個顧客可以到多個商店購物,顧客每次去商店購物有一個消費金額和日期,而且規定每個顧客在每個商店里每天最多消費一次?!吧痰辍庇袑傩裕荷痰昃幪枴⑸痰昝⒌刂?;“顧客”有屬性:顧客編號、姓名、年齡、性別。要求:試畫出E-R圖,并注明屬性和聯系類型。E-R圖表示解析實體集:商店和顧客聯系集:商店和顧客之間是消費的聯系,需要反映出消費的日期和金額聯系類型:多對多的聯系m消費商店金額n顧客日期
課堂練習1E-R圖表示E-R圖m消費商店金額n顧客日期
商店名地址商店編號顧客編號性別姓名年齡課堂練習1e-r圖表示如果一個聯系的某個參與是全部的,那么就用雙線將聯系與該參與者相連。3.兩種特殊情況的E-R圖思考題:①“人數”為什么畫成虛線橢圓?②請指出圖中的錯誤。e-r圖表示具有角色指示符的E-R圖示。3.兩種特殊情況的E-R圖職工職工號姓名性別職工職工號姓名性別領導經理工作人員思考題:這幅圖畫成普通的E-R圖該如何表示?理
解E-R模型的設計3E-R模型的設計E-R模型設計步驟確定實體集(名詞)確定實體間聯系(動詞)、聯系的類型構建實體-聯系框圖(避免交叉線)添加實體集的屬性(主碼的標注)E-R模型的設計注意事項屬性原則(2個)具有復合屬性、多值屬性和派生屬性的E-R圖E-R模型的設計課程名周學時課程號學分課程課程類型周數?課程類型還與上課周數有關,如何處理?E-R模型的設計除了復合屬性,其他屬性都不能具有需要描述的特性。否則,該屬性應該作為實體,而不該作為屬性。屬性原則1屬性不能描述屬性E-R模型的設計課程名周學時課程號學分課程課程類型周數×課程名周學時課程號學分課程分類類型名課程類型周數類型號1n課程類型還與上課周數有關,如何處理?E-R模型的設計教室觀察:右圖中的“拉手”關系:屬性能跟幾個實體集拉手?E-R模型的設計實體的屬性不能與其他實體發生聯系。否則,該屬性應該作為兩個實體之間聯系的屬性。屬性原則2屬性的“忠誠度”E-R模型的設計課程名周學時學分課程號課程性別姓名學生教師教授上課性別E-mail地址家庭地址教師號職稱電話號碼學號姓名年齡mmpnn“教授”聯系增加的兩個屬性。教室號時間考試成績?思考題:如果還需要將學生的考試成績在E-R模型中體現出來,應該怎么處理?×E-R模型的設計課程名周學時學分課程號課程性別姓名學生教師教授上課教室號性別時間E-mail地址家庭地址教師號職稱電話號碼學號姓名年齡mmpnn正確表示方法考試成績nm1管理主任姓名年齡學歷編號系系編號系名任職時間1E-R模型的設計新要求:在E-R圖中反映出主任的任職時間?E-R模型的設計課堂練習2請為某出版社繪制E-R圖?;臼聦嵱校鹤髡叩幕拘畔ⅲ盒彰⑸矸葑C號、性別、出生年月;圖書的基本信息:書刊號、書名、定價、出版日期;③一本書可能有多個作者,也可能只有一個作者;每個作者可能編寫了一本書,也可能編寫多本書;④作者編寫圖書時能獲得一定的稿酬;⑤圖書的作者內部分為主編和參編兩種角色,1位主編負責組織參編的編寫工作。E-R模型的設計編寫作者稿酬圖書性別出生年月身份證號書刊號出版日期書名定價課堂練習2參考答案姓名組織主編參編E-R模型的設計具有復合屬性、多值屬性和派生屬性的E-R圖。思考題:請分析圖中錯誤性別曾用第一個名學生班級現在姓名出生年月地址省聯系電話聯系電話學號姓名年齡國名城市街道街道號街道名曾用第二個名E-R模型的設計具有復合屬性、多值屬性和派生屬性的E-R圖。復合屬性多值屬性派生屬性E-R模型的設計【例1】假設一個倉庫可存放多種零件,而一種零件可以存放在多個倉庫,用庫存量來表示某種零件在某個倉庫中的數量,一個倉庫有多個職工,但是一個職工只能在一個倉庫工作,同時一個供應商可以供給若干項目多種零件,每個項目可以使用不同供應商供應的零件,每種零件可由不同的供應商供給。實例解析
其中,倉庫用倉庫號、面積、地點標識;零件用零件號、名稱、單價和規格標識;職工用職工號、姓名、職稱和年齡標識;供應商用供應商號、地址、電話標識;項目用項目號、預算、時間來標識。E-R模型的設計實例解析解析:倉庫零件供應商職工項目工作存放供應mn1nmnp庫存量實體集:倉庫、零件、職工、供應商、項目聯系集:倉庫與零件之間:存放(m:n)倉庫與職工之間:工作(1:n)供應商、項目、零件之間:供給(m:n:p)倉庫零件供應商職工項目工作庫存供應mn1nmnp庫存量E-R模型的設計綜合實例解析:供應商號電話地址倉庫號面積地點職稱年齡姓名職工號單價名稱零件號規格項目號預算時間E-R模型的設計
假設一個學生可選多門課程,而一門課程又有多個學生選修,每個學生每選一門課只有一個成績;一個教師只能講一門課程,一門課程也可有多個教師講授;一門課使用多本參考書,一本參考書可以多門課程選用;一個班級由多名學生組成,且每個班級的人數不同。課堂練習3解析:實體集:學生、課程、教師、參考書、班級學生與課程之間:選修(m:n),屬性:成績教師與課程之間:講授(n:1)課程與參考書之:使用(m:n)班級與學生之間:組成(1:n)聯系集:E-R模型的設計實例解析解析:學生教師課程參考書選修講授使用11nmn1班級組成nn成績人數E-R模型的設計實例解析解析:學生教師課程參考書選修講授使用11nmn1班級組成nn成績人數書目書名價格課程號學分課程名班級號專業職工號姓名職稱性別性別年齡姓名學號E-R模型的設計實例解析解析:學生教師課程參考書選修講授使用11nmn1班級組成nn成績人數書目書名價格課程號學分課程名班級號專業職工號姓名職稱性別性別年齡姓名學號E-R模型設計綜合實例4E-R模型的設計實例E-R模型設計步驟
大學教學情況E-R模型設計
主要內容E-R模型的設計實例E-R模型設計步驟數據需求分析實體集設計聯系集設計綜合E-R圖E-R模型的設計實例
大學教學情況E-R模型設計①數據需求分析大學有多個專業,每個專業用惟一的專業代碼和專業名稱標識。每個專業設置有多門課程,某些課程可被多個專業設置。每門課程由課程號、課程名和學時標識。每位教師由教職工號、姓名、性別、出生年月、職稱、(所屬)教研室和電話號碼標識。每位教師可以講授多門課程,某些課程可由多位教師主講。每個學生由學號、姓名、性別、出生年月和籍貫標識。多個學生可以同時學習同一門課程,一個學生必須學習多門課程。一個專業有多個學生,一個學生只能屬于某一專業,并屬于某個班級。E-R模型的設計實例
大學教學情況E-R模型設計②實體集設計大學有多個專業,每個專業用惟一的專業代碼和專業名稱標識。每個專業設置有多門課程,某些課程可被多個專業設置。每門課程由課程號、課程名和學時標識。每位教師由教職工號、姓名、性別、出生年月、職稱、(所屬)教研室和電話號碼標識。每位教師可以講授多門課程,某些課程可由多位教師主講。每個學生由學號、姓名、性別、出生年月和籍貫標識。多個學生可以同時學習同一門課程,一個學生必須學習多門課程。一個專業有多個學生,一個學生只能屬于某一專業,并屬于某個班級。E-R模型的設計實例
大學教學情況E-R模型設計②實體集設計大學有多個專業,每個專業用惟一的專業代碼和專業名稱標識。每個專業設置有多門課程,某些課程可被多個專業設置。每門課程由課程號、課程名和學時標識。每位教師由教職工號、姓名、性別、出生年月、職稱、(所屬)教研室和電話號碼標識。每位教師可以講授多門課程,某些課程可由多位教師主講。每個學生由學號、姓名、性別、出生年月和籍貫標識。多個學生可以同時學習同一門課程,一個學生必須學習多門課程。一個專業有多個學生,一個學生只能屬于某一專業,并屬于某個班級。E-R模型的設計實例
大學教學情況E-R圖模型設計②實體集設計課程專業學時專業名稱(a)專業實體集課程名專業代碼課程號(b)課程實體集E-R模型的設計實例
大學教學情況E-R模型設計②實體集設計教師學生性別出生年月(c)學生實體集出生年月學號教職工號(d)教師實體集性別姓名籍貫職稱姓名電話號碼教研室E-R模型的設計實例
大學教學情況E-R模型設計③聯系集設計大學有多個專業,每個專業用惟一的專業代碼和專業名稱標識。
每個專業設置有多門課程,某些課程可被多個專業設置。每門課程由課程號、課程名和學時標識。每位教師由教職工號、姓名、性別、出生年月、職稱、(所屬)教研室和電話號碼標識。每位教師可以講授多門課程,某些課程可由多位教師主講。每個學生由學號、姓名、性別、出生年月和籍貫標識。多個學生可以同時學習同一門課程,一個學生必須學習多門課程。一個專業有多個學生,一個學生只能屬于某一專業,并屬于某個班級。E-R模型的設計實例
大學教學情況E-R模型設計③聯系集設計教師學生課程專業學習歸屬講授設置班級分數M1MNNMMNE-R模型的設計實例
大學教學情況E-R模型設計④綜合E-R圖教師學生課程專業學習歸屬講授設置班級分數M1MNNMMN學號出生年月姓名性別籍貫專業代碼專業名稱電話號碼教職工號姓名性別出生年月教研室職稱學時課程號課程名E-R模型總結優點簡單,容易理解,真實反應用戶需求;與計算機無關,用戶容易接受。遇到實際問題一般先設計一個E-R模型,然后把E-R模型轉換成計算機能實現的數據模型。本章小結實體-聯系(E-R)模型的基本要素:實體、實體集、屬性、域、實體型、實體值、角色、度、聯系、聯系集、碼等。E-R模型的表示方法;E-R模型圖的畫法;E-R模型設計過程。思政拓展你從“刪庫跑路”事件中得到什么啟發?你覺得作為數據庫從業者,應具備哪些職業道德和職業操守?議一議謝謝聆聽!第3章
關系模型工業和信息化部“十四五”規劃教材
浙江省高職院校“十四五”首批重點教材《關系數據庫設計與應用》(工作手冊式)
配套課件學習目標LEARNINGTARGET掌握關系模型的基本結構及術語;掌握關系模型的數據操作;理解關系模型的完整性約束;掌握E-R模型轉換成關系模型的方法。知識目標能力目標會進行關系的基本運算;能將E-R模型轉換成關系模型。思政目標培養學生嚴謹、認真的學習態度;培養規則意識和數據共享意識。主要內容MAINCONTENTS3.1關系模型基本結構及術語3.2關系模型的數據操作3.3關系的完整性約束*3.4E-R模型轉換為關系模型3.5關系模型的特點認識關系模型現實世界信息世界(概念模型)計算機世界(數據模型)關系數據庫是目前各類數據庫中最重要、最流行的數據庫。關系數據模型(或稱關系模型)屬于邏輯數據模型,是對現實世界的第二層抽象。還有層次模型、網狀模型等,但關系模型是目前最重要的一種數據模型。信息世界:用概念模型(E-R模型)表示對現實世界的抽象與模擬。計算機世界:用DBMS(數據庫管理系統)支持的數據模型表現。認識關系模型關系模型的重要性關系數據庫采用關系模型作為數據的組織方式。關系數據庫是支持關系模型的數據庫系統。關系模型就是用二維表格結構來表示實體及實體之間聯系的數據模型。關系模型由關系數據結構、關系操作集合和完整性約束三部分組成。關系模型基本結構及術語3.1關系模型基本結構及術語
關系模型:關系模型的結構非常簡單,在關系模型中,現實世界中的實體以及實體之間的聯系都通過關系來表達。在用戶觀點下,關系數據模型中的邏輯結構是一張二維表,它由行(也稱記錄)和列(也稱屬性)組成。關系模型基本結構及術語學號姓名性別班級年齡2021210021江星男大數據2101192021210022趙盼男大數據2101202021210023劉鵬男大數據2101202021210024李鑫女大數據210119學生表屬性名數據屬性記錄關系模型基本結構及術語關系模型的基本術語:1.關系2.元組3.屬性4.主碼5.主屬性與非主屬性6.域7.分量8.關系模式9.元數關系模型基本結構及術語1.關系在關系模型中,數據是以二維表的形式存在的,這個二維表就叫做關系。通俗地說,一個關系對應一張表。每個關系都有一個關系名。但關系與傳統的二維表又有區別:關系表中的每一列都是不可再分的基本屬性;表中各屬性不能重名;表中的行列次序并不重要,即可以交換行、列的前后順序。關系模型基本結構及術語關系例子1學生關系名/表名關系學號姓名性別班級年齡2021210021江星男大數據2101192021210022趙盼男大數據2101202021210023劉鵬男大數據2101202021210024李鑫女大數據210119關系模型基本結構及術語關系例子2姓名性別工資基本工資職務工資張芳女2000.0800.0王剛男1600.0500.0余梅女1200.0300.0姓名性別基本工資職務工資
張芳女2000.0800.0王剛男1600.0500.0余梅女1200.0300.0×√關系模型基本結構及術語關系例子3×學號姓名性別年齡姓名0101張偉男20張三0102李麗女18李四0103王明男19王五0104趙娟女20趙六關系模型基本結構及術語關系例子4學號姓名性別年齡曾用名0101張偉男20張三0102李麗女18李四0103王明男19王五0104趙娟女20趙六學號姓名曾用名年齡性別0101張偉張三20男0102李麗李四18女0103王明王五19男0104趙娟趙六20女關系模型基本結構及術語2.元組表中的一行即為一個元組,相當于一個記錄值。3.屬性表中的一列即為一個屬性,列名即為屬性名。4.主碼主碼(也稱主鍵或主關鍵字),是表中的屬性或屬性組,用于唯一確定一個元組。2021210021江星男大數據210119學號2021210021202121002220212100232021210024學號姓名性別班級年齡關系模型基本結構及術語5.主屬性與非主屬性包含在主碼中的屬性稱主屬性,不包含在主碼中的屬性稱非主屬性。6.域屬性的取值范圍稱為域。如:“性別”屬性的域是(F、M)。7.分量元組中的一個屬性值。學號姓名性別班級年齡2021210021江星男大數據210119思考題:這一個元組中有幾個分量?關系模型基本結構及術語8.關系模式關系的描述稱為關系模式,通常情況下,簡記為R(U),其中R為關系名,U為R中屬性名的集合,表示為:關系名(屬性1,屬性2,…,屬性n)通篇用到的例子:學生(學號,姓名,年齡,性別,班級)課程(課程號,課程名,教師,周課時數,備注)選課(學號,課程號,成績)9.元數(K≥1)在關系模式中,屬性的個數。思考題:學生關系中有幾個元數?關系模型基本結構及術語關系模型的認識從集合論的觀點關系是一個元數為K(K≥1)的元組的集合。以下認識:關系是元組的集合。關系模式是命名的屬性集合。元組是屬性值的集合。關系中的每一個屬性值都是不可分解的。關系中不允許出現相同的元組。小結學號姓名性別班級年齡2021210021江星男大數據2101192021210022趙盼男大數據2101202021210023劉鵬男大數據2101202021210024李鑫女大數據210119學生關系名/表名關系主碼D1D2D5D3D4域關系模式行屬性列元組主屬性本關系模式如何表示?元數是多少?5課堂練習1請分析下表:關系是指?關系名是?元組有幾個?屬性有哪些?元數是多少?選課表學號課程號成績2021210021474202121002218520212100231932021210024291請寫出上表對應的關系模式。動一動課堂練習11.參考答案:關系是指“選課表”這張表;關系名是“選課”;元組有“4個”,即表中4行就是4個元組;屬性是“學號、課程號、成績“;元數是“3”。2.上表對應的關系模式:選課(學號,課程號,成績)。關系模型的數據操作3.2關系模型的數據操作關系模型的操作對象是集合。即操作的數據及操作的結果都是完整的表。關系模型中常用的關系操作包括查詢操作和插入、刪除、修改操作兩大部分。其中查詢操作的表達能力是最重要的。(包括并、交、差、選擇、投影、連接等。)關系操作增、刪、改、查關系模型的數據操作在關系代數中,變量是關系,運算符操縱關系的結果是形成新的關系。即關系代數是封閉的,一個或多個關系操作的結果仍然是一個關系。關系代數關系代數用到的運算符包括四類:集合運算符、專門的關系運算符、比較運算符和邏輯運算符(P49)。關系模型的數據操作關系代數關系代數運算符運算符含義集合運算符∪-∩并差交專門的關系運算符×÷σ∏?廣義笛卡爾積除選擇投影連接關系模型的數據操作并運算差運算交運算笛卡爾乘積投影選擇連接關系代數關系模型的數據操作關系代數1.并運算兩個集合R、S的“并”操作,如圖:即求:所有至少出現在兩個關系之一中的元組集合。前提:每個關系必須要有相同數目的屬性,而且在對應列中的屬性必須是相同的域。兩個關系的“并”是指將一個關系的元組加到第二個關系中,生成新的關系,新關系的屬性列數沒有發生變化。關系模型的數據操作RelationsR,S:AB
121RAB
23SAB
12123AB
1213=R∪S:1.并運算關系代數關系模型的數據操作學號姓名性別班級年齡2021210001張燕女大數據2102192021210002陳芳女大數據2102192021210023劉鵬男大數據210120學號姓名性別班級年齡2021210021江星男大數據2101192021210022趙盼男大數據2101202021210023劉鵬男大數據2101202021210024李鑫女大數據210119RS學號姓名性別班級年齡2021210001張燕女大數據2102192021210002陳芳女大數據2102192021210021江星男大數據2101192021210022趙盼男大數據2101202021210023劉鵬男大數據2101202021210024李鑫女大數據210119R∪S1.并運算關系代數關系模型的數據操作2.差運算兩個集合的“差”操作,如圖:即求:所有出現在一個關系而不在另一關系中的元組集合。兩個集合的“差”操作(R-S)生成一個新的結果集,在結果集中包括所有在集合R中出現而在S中不出現的元數。關系代數關系模型的數據操作2.差運算RelationsR,S:AB
121RAB
23SR-S:AB
11=關系代數關系模型的數據操作學號姓名性別班級年齡2021210001張燕女大數據2102192021210002陳芳女大數據2102192021210023劉鵬男大數據210120學號姓名性別班級年齡2021210021江星男大數據2101192021210022趙盼男大數據2101202021210023劉鵬男大數據2101202021210024李鑫女大數據210119RS學號姓名性別年齡籍貫200101張燕女21福建200102陳芳女21江蘇R-S2.差運算S-R?注意:減法的順序不同,最后得出的值也不同。學號姓名性別年齡籍貫100101江星男21內蒙古100102趙盼男21河南100104李鑫女21江西關系代數關系模型的數據操作3.交運算兩個集合的“交”操作,如圖:即求:所有同時出現在兩個關系中的元組集合。兩個集合的“交”操作生成一個新的結果集,在結果集中包括所有在集合R中出現并且在S中也出現的元數。關系代數關系模型的數據操作3.交運算RelationsR,S:AB
121RAB
23SR∩S:AB2=關系代數關系模型的數據操作學號姓名性別班級年齡2021210001張燕女大數據2102192021210002陳芳女大數據2102192021210023劉鵬男大數據210120學號姓名性別班級年齡2021210021江星男大數據2101192021210022趙盼男大數據2101202021210023劉鵬男大數據2101202021210024李鑫女大數據210119RS學號姓名性別班級年齡2021210023劉鵬男大數據210120R∩S3.交運算關系代數關系模型的數據操作課堂練習RS求:R∪S、R∩S、R-S學號課程號202121002122021210022420212100231學號課程號202121002122021210024320212100253關系代數動一動關系模型的數據操作4.笛卡爾積兩個關系的積(也稱笛卡爾乘積)是指第一個關系中的每個元組和第二個關系的每個元組的聯接。關系A(含有X個屬性列,M個元組)和關系B(含有Y個屬性列,N個元組)的“積”是一個有X+Y屬性列,有M×N個元組的關系?!胺e”記為:A×B或B×A。關系代數關系模型的數據操作4.笛卡爾積ABCA1B1C1A2B2C2A3B3C3R1DED1E1D2E2R2A1B1C1D1E1A3B3C3D2E2A1B1C1D2E2A3B3C3D1E1A2B2C2D2E2A2B2C2D1E1ABCDER1×R2:
屬性列:3+2=5,元組=3×2=6關系代數關系模型的數據操作課程號課程名教師周課時數備注1關系數據庫應用吳老師32Python語言基礎黃老師33大數據分析技術黃老師44數據采集與預處理涂老師4RS4.笛卡爾積學號課程號成績2021210021474202121002218520212100231932021210024291屬性列:5+3=8,元組=4×4=16關系代數關系模型的數據操作R×S:4.笛卡爾積課程號課程名教師周課時數備注學號課程號成績1關系數據庫應用吳老師420111284741關系數據庫應用吳老師420111291931關系數據庫應用吳老師420111301741關系數據庫應用吳老師420111312842Python語言基礎黃老師420111284742Python語言基礎黃老師420111291932Python語言基礎黃老師420111301742Python語言基礎黃老師420111312843大數據分析技術黃老師220111284743大數據分析技術黃老師220111291933大數據分析技術黃老師220111301743大數據分析技術黃老師220111312844數據采集與預處理涂老師620111284744數據采集與預處理涂老師620111291934數據采集與預處理涂老師620111301744數據采集與預處理涂老師62011131284關系代數關系模型的數據操作5.投影投影是從一個關系中選擇指定的屬性的操作。投影的結果是一個帶有所選屬性的新的關系。關系R上的投影是從R中選擇出若干屬性列組成新的關系。記作:∏A(R),其中A為R的屬性列。A1A2A3A4A2A4∏關系代數關系模型的數據操作5.投影ABC
102030401112AC
1112=AC
112RelationR:
A,C
(R)關系代數關系模型的數據操作5.投影課程號課程名教師周課時數備注1關系數據庫應用吳老師32Python語言基礎黃老師33大數據分析技術黃老師44數據采集與預處理涂老師4課程表例1:查詢課程表中課程號、課程名及相應的任課教師信息。
∏課程號,課程名,教師(課程表)課程號課程名教師1關系數據庫應用吳老師2Python語言基礎黃老師3大數據分析技術黃老師4數據采集與預處理涂老師例2:查詢課程表中任課教師信息。教師吳老師黃老師涂老師
∏教師(課程表)
注意:投影是取列,其結果是一個關系,不包含任何重復的元組。關系代數關系模型的數據操作6.選擇投影操作取得是在垂直方向上關系的子集(列),選擇操作取得是水平方向上的關系子集(行)。投影標識的是新關系中所包括的屬性,選擇標識的是在新關系上所包括的元組。在關系R中選擇滿足給定條件的諸元組,可以表示為:
σ
F(R)。A1A2A3A4σA1A2A3A4關系代數關系模型的數據操作6.選擇RelationR:ABCD
A=B
(R)ABCD
112237310關系代數關系模型的數據操作6.選擇RelationR:ABCD
A=B^D>5
(R)ABCD
123710關系代數關系模型的數據操作課程號課程名教師周課時數備注1關系數據庫應用吳老師32Python語言基礎黃老師33大數據分析技術黃老師44數據采集與預處理涂老師4課程表6.選擇例如:查詢周課時數為4的課程信息。
周課時數=4(課程表)或
4=4(課程表)課程號課程名教師周課時數備注3大數據分析技術黃老師44數據采集與預處理涂老師4關系代數其中下角標4為“周課時數”的屬性列號關系模型的數據操作課程表6.選擇例如:查詢課程號大于3的課程信息。
課程號>3(課程表)或
1>3(課程表)關系代數課程號課程名教師周課時數備注1關系數據庫應用吳老師32Python語言基礎黃老師33大數據分析技術黃老師44數據采集與預處理涂老師4課程號課程名教師周課時數備注4數據采集與預處理涂老師4關系模型的數據操作6.選擇關系運算的組合關系運算的對象和結果都是關系,我們可以把多個關系運算組合稱一個關系代數表達式。如:學生表(學號,姓名,年齡,性別,班級)例:找出所有年齡大于20歲的學生姓名:
∏姓名()
年齡>20(學生表)關系代數關系模型的數據操作6.選擇關系運算的組合例:查詢出名叫張三的學生的性別和年齡。學生表(學號,姓名,年齡,性別,班級)∏性別,年齡()
姓名='張三'
(學生表)關系代數關系模型的數據操作6.選擇關系運算的組合例:查詢出名叫張三和張六的學生的性別和年
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 傷殘糾紛賠償協議書
- 項目安全保密協議書
- 園林每日施工協議書
- 機械拖車協議書范本
- 水庫原水供水協議書
- 直播項目合伙協議書
- 醫院交接協議書范本
- 宿舍電費分攤協議書
- 沙子水泥轉讓協議書
- 離婚車子過戶協議書
- 2025年安徽池州東至安東投資控股集團有限公司招聘筆試參考題庫附帶答案詳解
- 幼兒園清明節主題班會課件
- 2025年專升本大學計算機基礎考試大綱
- 2024年太原城市職業技術學院高職單招數學歷年參考題庫含答案解析
- 《古代的陶瓷藝術》課件
- 2024新滬教版英語七年級下單詞默寫表
- 【公開課】跨學科實踐:制作簡易桿秤(課件)-人教版八年級物理下冊
- 產品研發部門的工作總結
- 四年級小數簡便運算100道
- 水土保持方案投標文件技術部分
- 《園林植物病蟲害》課件
評論
0/150
提交評論