版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、2022/8/131數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫的基本概念數(shù)據(jù)庫(Database,簡稱DB)是長期儲存在計算機內(nèi)、有組織的、可共享的大量數(shù)據(jù)集合數(shù)據(jù)管理的發(fā)展過程人工管理階段(40年代中-50年代中)文件系統(tǒng)階段(50年代末-60年代中)數(shù)據(jù)庫系統(tǒng)階段(60年代末-現(xiàn)在)數(shù)據(jù)模型數(shù)據(jù)模型的三要素數(shù)據(jù)結構 數(shù)據(jù)操作 數(shù)據(jù)的約束條件概念模型, E-R 模型實體、聯(lián)系、屬性、碼、域、實體型、實體集一對一聯(lián)系,一對多聯(lián)系,多對多聯(lián)系E-R圖數(shù)據(jù)模型(續(xù))主要數(shù)據(jù)模型非關系模型(層次模型,網(wǎng)狀模型)基本層次單元:兩個記錄以及它們之間的一對多聯(lián)系 關系模型實體以及聯(lián)系都用關系(或二維表)表示數(shù)據(jù)庫系統(tǒng)的結構數(shù)據(jù)
2、庫系統(tǒng)三級模式結構內(nèi)模式、模式、外模式邏輯獨立性外模式/模式映射物理獨立性模式/內(nèi)模式映射數(shù)據(jù)庫系統(tǒng)的體系結構單用戶結構,主從式結構,分布式結構,客戶/服務器結構,瀏覽器/應用服務器/數(shù)據(jù)庫服務器結構數(shù)據(jù)庫系統(tǒng)的組成數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)應用系統(tǒng)數(shù)據(jù)庫管理員(用戶)2022/8/137第二章 關系數(shù)據(jù)庫2022/8/138關系屬性,元組候選碼,主碼,主屬性關系模式關系數(shù)據(jù)庫實體完整性主屬性不能為空值參照完整性外碼或者取空值,或者等于對應關系的主碼值用戶定義的完整性2022/8/139傳統(tǒng)的集合運算并() 、差(-)、交() 、廣義笛卡爾積(X )專門的關系投影()、選擇() 、連
3、接( )、除( )并():兩個關系需有相同的關系模式,并的對象是元組,由兩個關系所有元組構成。差(-):同樣,兩個關系有相同的模式,R和S的差是由屬于R但不屬于S的元組構成的集合。交():兩個關系需有相同的關系模式, R和S的交是由既屬于R又屬于S的元組構成的集合。2022/8/1310投影():對關系進行垂直分割,消去某些列,并重新安排列的順序。選擇():根據(jù)某些條件關系作水平分割,即選擇符合條件的元組。連接包括聯(lián)接和F聯(lián)接,是選擇RS中滿足i(r+j)或F條件的元組構成的集合,特別注意等值聯(lián)接(為等號=)。自然連接(R|X|S):在RS中,選擇R和S公共屬性值均相等的元組,并去掉RS中重復
4、的公共屬性列。如果兩個關系沒有公共屬性,則自然聯(lián)接就轉化為笛卡爾積。 2022/8/1311例 查詢信息系(IS系)全體學生(選擇) Sdept = IS (Student)或 5 =IS (Student)例 查詢學生的姓名和所在系(投影)即求Student關系上學生姓名和所在系兩個屬性上的投影 Sname,Sdept(Student)或 2,5(Student)2022/8/1312例 查詢至少選修了一門其直接先行課為5號課程的課程的學生姓名(連接)。 Sname(Cpno=5(Course SC Student)例 查詢選修了全部課程的學生號碼。 Sno,Cno(SC)Cno(Cours
5、e) 2022/8/1313第三章 關系數(shù)據(jù)庫標準語言SQL2022/8/1314(1)數(shù)據(jù)定義:SQL DDL。定義SQL模式,基本表、視圖和索引。 (2)數(shù)據(jù)操縱:SQL DML。包括數(shù)據(jù)查詢和數(shù)據(jù)更新(增、刪、改)。 (3)數(shù)據(jù)控制:包括對基本表和視圖的授權、完整性規(guī)則的描述,事務控制等。 SQL數(shù)據(jù)庫的體系結構也是三級結構,但術語與傳統(tǒng)關系模型術語不同,在SQL中,關系模式稱為“基本表”,存儲模式稱為“存儲文件”,子模式稱為“視圖”,元組稱“行”,屬性稱“列”。CREATE TABLECREATE TABLE ( , , );:所要定義的基本表的名字:組成該表的各個屬性(列):涉及相應
6、屬性列的完整性約束條件:涉及一個或多個屬性列的完整性約束條件 2022/8/1316SELECT ALL|DISTINCT , FROM , WHERE GROUP BY HAVING ORDER BY ASC|DESC ;2022/8/1317例 查詢?nèi)w學生的詳細記錄。SELECT Sno,Sname,Ssex,Sage,Sdept FROM Student; 或SELECT *FROM Student;例 查全體學生的姓名及其出生年份。SELECT Sname,2000-SageFROM Student;2022/8/1318例 查詢以DB_開頭,且倒數(shù)第3個字符為 i的課程的詳細情況。
7、 SELECT * FROM Course WHERE Cname LIKE DB_%i_ _ ESCAPE ;例 查詢?nèi)鄙俪煽兊膶W生的學號和相應的課程號。 SELECT Sno,Cno FROM SC WHERE Grade IS NULL;2022/8/1319例 查詢信息系(IS)、數(shù)學系(MA)和計算機科學系(CS)學生的姓名和性別。SELECT Sname,SsexFROM StudentWHERE Sdept IN ( IS,MA,CS )可改寫為:SELECT Sname,SsexFROM StudentWHERE Sdept= IS OR Sdept= MA OR Sdept=
8、 CS ;2022/8/1320例 查詢選修了3號課程的學生的學號及其成績,查詢結果按分數(shù)降序排列。 SELECT Sno,Grade FROM SC WHERE Cno= 3 ORDER BY Grade DESC; 2022/8/1321例 求各個課程號及相應的選課人數(shù)。 SELECT Cno,COUNT(Sno) FROM SC GROUP BY Cno; 例 查詢選修了3門以上課程的學生學號。 SELECT Sno FROM SC GROUP BY Sno HAVING COUNT(*) 3; 2022/8/1322例 查詢每個學生的學號、姓名、選修的課程名及成績。 ,Sname,Cn
9、ame,Grade FROM Student,SC,Course WHERE Student.Sno = SC.Sno ;2022/8/1323插入數(shù)據(jù)INSERTINTO (,)VALUES ( , )例 將一個新學生記錄(學號:95020;姓名:陳冬;性別:男;所在系:IS;年齡:18歲)插入到Student表中。 INSERT INTO Student VALUES (95020,陳冬,男,IS,18);2022/8/1324UPDATE SET =,= WHERE ;例 將所有學生的年齡增加1歲。 UPDATE Student SET Sage= Sage+1;修改數(shù)據(jù)2022/8/1
10、325例 將計算機科學系全體學生的成績置零。 UPDATE SC SET Grade=0 WHERE CS= (SELETE Sdept FROM Student WHERE Student.Sno = SC.Sno);修改數(shù)據(jù)2022/8/1326DELETE FROM WHERE ;例 刪除學號為95019的學生記錄。 DELETE FROM Student WHERE Sno=95019;刪除數(shù)據(jù)2022/8/1327建立視圖CREATE VIEW ( ,) AS WITH CHECK OPTION;2022/8/1328例 建立信息系學生的視圖,并要求透過該視圖進行的更新操作只涉及信息
11、系學生。 CREATE VIEW IS_Student AS SELECT Sno,Sname,Sage FROM Student WHERE Sdept= IS WITH CHECK OPTION;2022/8/1329練習有三個關系模式分別是學生,課程和選修.其關系模式表示為:學生(學號,姓名,性別,年齡,所在系)課程(課程號,課程名,課程學分)選修(學號,課程號,成績)查詢:2022/8/1330答案1)各所在系的平均年齡.SELECT 所在系,AVG(年齡) FROM 學生 GROUP BY 所在系; 2)各門課程的選修人數(shù).SELECT 課程號,COUNT(學號) FROM 選修 G
12、ROUP BY 課程號; 3)年齡最大的學生的學號和姓名.SELECT 學號,姓名 FROM 學生 WHERE 年齡 = (SELECT MAX(年齡) FROM 學生); 2022/8/13314)學生張生的選修課程學分數(shù). SELECT SUM(課程學分) FROM 課程,選修,學生 WHERE 課程.課程號=選修.課程號 AND 學生.學生號=選修.學生號 AND 學生.姓名=“張生”; 2022/8/13325)有不及格(成績60)課程的學生名單,按所在系,學號,姓名,不及格課程名排列.SELECT 所在系,學生.學號,姓名,課程名 FROM 學生,課程,選修 WHERE 課程.課程號
13、=選修.課程號 AND 學生.學生號=選修.學生號 AND 成績60;2022/8/1333第四章 數(shù)據(jù)庫安全性2022/8/1334定義:為防止因用戶非法使用而造成的數(shù)據(jù)泄密、更改或破壞。安全性控制方法用戶標識與鑒別存取控制視圖機制審計數(shù)據(jù)加密1 授 權GRANT語句的一般格式: GRANT ,. ON TO ,. WITH GRANT OPTION;誰定義?DBA和表的建立者(即表的屬主)GRANT功能:將對指定操作對象的指定操作權限授予指定的用戶。例題 例1 把查詢Student表權限授給用戶U1 GRANT SELECT ON TABLE Student TO U1;例題(續(xù)) 例5
14、把對表SC的INSERT權限授予U5用戶,并允許他再將此權限授予其他用戶 GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION;SQL收回權限的功能REVOKE語句的一般格式為: REVOKE ,. ON FROM ,.;功能:從指定用戶那里收回對指定對象的指定權限例題例7 把用戶U4修改學生學號的權限收回REVOKE UPDATE(Sno)ON TABLE Student FROM U4;2022/8/1340第五章 數(shù)據(jù)庫完整性完整性控制機制1.完整性約束條件定義機制2.完整性檢查機制3.違約反應 關系系統(tǒng)三類完整性的實現(xiàn)關系數(shù)據(jù)庫系統(tǒng)都提供了定
15、義和檢查實體完整性、參照完整性和用戶定義的完整性的功能違反實體完整性規(guī)則和用戶定義的完整性規(guī)則的操作: 一般是拒絕執(zhí)行違反參照完整性的操作:拒絕執(zhí)行接受這個操作,同時執(zhí)行一些附加的操作,以保證數(shù)據(jù)庫的狀態(tài)正確2022/8/1343第六章 關系數(shù)據(jù)理論2022/8/1344關系數(shù)據(jù)庫設計中的異常問題 (概念)數(shù)據(jù)冗余、更新異常插入異常、刪除異常候選碼、主碼、外碼、非主屬性、主屬性函數(shù)依賴 (概念及理解)非平凡的函數(shù)依賴完全函數(shù)依賴部分函數(shù)依賴傳遞函數(shù)依賴1NF、2NF、3NF的定義2022/8/1345規(guī)范化過程非規(guī)范化的關系消去重復項,將關系模式分解成若干個規(guī)范化的關系模式,并指定一個或若干個
16、屬性作為主碼。消除決定屬性集非碼的非平凡函數(shù)依賴1NF消除非主屬性對碼的部分函數(shù)依賴2NF消除非主屬性對碼的傳遞函數(shù)依賴3NF消除主屬性對碼的部分和傳遞函數(shù)依賴BCNF2022/8/1346消除了部分函數(shù)依賴的INF的關系模式,必定是_。 A1NF B2NF C3NF D4NF2022/8/1347練習一設有關系STUDENT(Sno,SNAME,SDEPT,MNAME,CNAME,GRADE),Sno,CNAME為候選碼,設關系中有如下函數(shù)依賴: Sno,CNAMESNAME,SDEPT,MNAMESnoSNAME,SDEPT,MNAMESno,CNAMEGRADESDEPTMNAME試求下
17、列問題:(1)關系STUDENT屬于第幾范式? (2)如果關系STUDENT不屬于3NF,請將關系STUDENT逐步分解為3NF。 要求:寫出達到每一級范式的分解過程,并指明消除什么類型的函數(shù)依賴。 2022/8/1348SnoSNAMESDEPTMNAMECNAMEGRADE0501李明經(jīng)管張軍數(shù)據(jù)庫860501李明經(jīng)管張軍C言語900702王浩環(huán)科王蘭城市學800801陸靜大氣李翔氣象學702022/8/1349(1)關系STUDENT是1NF。(2)首先消除部分函數(shù)依賴Sno,CNAMESNAME,SDEPT,MNAME將關系分解為:R1(Sno,SNAME,SDEPT,MNAME)R2
18、(Sno,CNAME,GRADE)在關系R1中存在非主屬性對候選碼的傳遞函數(shù)依賴SnoSDEPT,SDEPTMNAME,所以以上關系模式還不是3NF,進一步分解R1:R11(Sno,SNAME,SDEPT)R12(SDEPT,MNAME)R11,R12都是3NF。2022/8/1350SnoSNAMESDEPTMNAME0501李明經(jīng)管張軍0501李明經(jīng)管張軍0702王浩環(huán)科王蘭0801陸靜大氣李翔SnoCNAMEGRADE0501數(shù)據(jù)庫860501C言語900702城市學800801氣象學702022/8/1351SnoSNAMESDEPT0501李明經(jīng)管0501李明經(jīng)管0702王浩環(huán)科08
19、01陸靜大氣SDEPTMNAME經(jīng)管張軍經(jīng)管張軍環(huán)科王蘭大氣李翔2022/8/1352練習二設有如下的關系R(1)它為第幾范式,為什么?(2)是否存在刪除異常(3)將它分解為高一級范式課程名教師名教師地址C1王軍D1C2李浩D2C3陳明D3C4李浩D42022/8/1353(1)它是2NF候選碼為課程名,而課程名教師名,教師名教師地址,存在非主屬性教師地址對候選碼課程號的傳遞依賴,又不存在非主屬性對候選碼的部分函數(shù)依賴(2)存在當刪除某門課程時,會刪除不該刪除的教師的有關信息(3)R1(課程名,教師名) R2 (教師名,教師地址)分解后,若刪除課程數(shù)據(jù)只對R1操作,教師地址信息在R2中仍保留,
20、不會丟失教師信息。2022/8/1354練習三設有關系模式 R(職工名,項目名,工資,部門名,部門經(jīng)理) 如果規(guī)定,每個職工可參加多個項目,各領一份工資;每個項目只屬于一個部門管理;每個部門只有一個經(jīng)理。(1)試寫出關系模式R的基本函數(shù)依賴和碼;(2)說明R不是2NF模式的理由,并把R分解成2NF范式。(3)如果還不是3NF范式,說明理由,并分解成3NF范式2022/8/1355練習四假設某商業(yè)集團數(shù)據(jù)庫中有一關系模式R如下: R(商店編號,商品編號,商品庫存數(shù)量,部門編號,負責人)如果規(guī)定: (1)每個商店的每種商品只在該商店的一個部門銷售; (2)每個商店的每個部門只有一個負責人; (3)
21、每個商店的每種商品只有一個庫存數(shù)量。 試回答下列問題: (1)根據(jù)上述規(guī)定,寫出關系模式R的基本函數(shù)依賴; (2)找出關系模式R的候選碼; (3)試問關系模式R最高已經(jīng)達到第幾范式?為什么? (4)如果R不屬于3NF,請將R分解成3NF范式。2022/8/1356第七章 數(shù)據(jù)庫設計2022/8/1357數(shù)據(jù)庫設計的基本步驟需求分析 概念結構設計 邏輯結構設計 數(shù)據(jù)庫物理設計 數(shù)據(jù)庫實施 數(shù)據(jù)庫運行與維護 2022/8/1358需求分析收集資料分析整理數(shù)據(jù)流程圖數(shù)據(jù)字典2022/8/1359概念結構設計E-R模型的建立分E-R圖初步E-R圖基本E-R圖常用的三種抽象方法:分類聚集概括:超類和子類的概念(學生:本科生、研究生;教員:正副教授的表示)合并初步E-R圖分E-R圖可能存在冗余的數(shù)據(jù)和冗余的實體間聯(lián)系基本E-R圖消除不必要的冗余2022/8/1360邏輯結構設計E-R圖向關系模型的轉換實體的轉換一個實體轉換為一個關系模式,關系的屬性:實
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度品牌形象廣告安裝及宣傳推廣合同范本3篇
- 二零二五年度多媒體教學設備集成銷售合同3篇
- 統(tǒng)編版語文九年級下冊第一課祖國啊我親愛的祖國練習題(含答案)
- 陜西省渭南市尚德中學2024-2025學年高一上學期第二次階段性語文試卷(含答案)
- 二十四節(jié)氣之大寒介紹
- Unit 13 My seven days(說課稿)-2024-2025學年劍橋少兒英語二級上冊
- 二零二五年度報刊亭智能物流配送合作合同2篇
- 二零二五年度大數(shù)據(jù)房地產(chǎn)典當服務協(xié)議3篇
- 二零二五年度勞動合同違約責任與賠償細則合同3篇
- 新疆昌吉回族自治州(2024年-2025年小學六年級語文)統(tǒng)編版摸底考試(上學期)試卷及答案
- CQI-23模塑系統(tǒng)評估審核表-中英文
- 2024年大型游樂設施操作(Y2)特種作業(yè)取證(廣東)考試復習題庫(含答案)
- 【教案】Unit+4+My+Favourite+Subject大單元整體教學設計人教版英語七年級上冊
- 2024年省國資委選聘兼職外部董事人選高頻難、易錯點500題模擬試題附帶答案詳解
- 2024-2030年中國工控機行業(yè)需求狀況及發(fā)展趨勢分析研究報告
- 離職證明(標準模版)
- 遼寧省名校聯(lián)盟2024年高三9月份聯(lián)合考試 英語試卷(含答案詳解)
- JGJ181-2009T 房屋建筑與市政基礎設施工程檢測
- GB/T 20554-2024海帶
- 100以內(nèi)加減法混合題帶括號
- 《自然生態(tài)降解聚乙烯工業(yè)包裝膜》編制說明
評論
0/150
提交評論