數據庫系統概論王珊第五版學習筆記_第1頁
數據庫系統概論王珊第五版學習筆記_第2頁
數據庫系統概論王珊第五版學習筆記_第3頁
數據庫系統概論王珊第五版學習筆記_第4頁
數據庫系統概論王珊第五版學習筆記_第5頁
已閱讀5頁,還剩43頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、圓滿WORD格式第一章數據庫的四個基本見解:數據、數據庫、數據庫管理系統、數據庫系統。數據:是數據庫中儲藏的基本對象。描述事物的符號稱為數據。數據庫:是長遠儲藏在計算機內、有組織的、可共享的大量數據的會集。數據庫數據擁有永久儲藏、有組織和可共享三個基本特點。數據庫管理系統:是計算機的基礎軟件。數據庫系統:是由數據庫、數據庫管理系統、應用程序和人組成的儲藏、管理、處理和保護數據的系統。數據辦理和數據管理。數據辦理:指對各種數據進行手機、儲藏、加工和流傳的一系列活動的總和。數據管理:指對數據進行分類、組織、編碼、儲藏、檢索和保護。數據獨立性。物理獨立性:指用戶的應用程序與數據庫中數據的物理儲藏是互

2、相獨立的。邏輯獨立性:指用戶的應用程序與數據庫的邏輯結構是互相獨立的。4.數據模型-是對現實世界數據特點的抽象(現實世界的模擬)。數據模型是數據庫系統的核心和基礎。見解模型:信息模型,依照用戶的見解來對數據和信息建模,主要用于數據庫設計。邏輯模型:依照計算機系統的見解對數據建模。物理模型:描述數據在計算機內部的表示方式和存取方法。數據模型組成要素:數據結構、數據操作、數據的完滿性拘束條件。5.信息世界中的基本見解。實體:客觀存在并可互相區其他事物。屬性:實體所擁有的某一特點。碼:唯一表記實體的屬性集。聯系:失誤內部以及事物之間是有聯系的。實體內部的聯系平常是指組成實體的個屬性之間的聯系,實體之

3、間的聯系平常是指不相同實體集之間的聯系。實體之間的聯系有一對一、一對多和多對多等各種種類。數據完滿性拘束條件。實體完滿性:檢查主碼值可否唯一,檢查主碼的各個屬性可否為空。實體完滿性在專業整理分享圓滿WORD格式創辦表時用primarykey主鍵來定義。參照完滿性:檢查增改正時檢查外碼拘束。在創辦表時用外碼foreignkey短語定義。用戶定義完滿性:創辦表中定義屬性的同時,能夠依照應用要求定義屬性上的拘束條件,即屬性值限制。列值非空(notnull)、列值唯一(unique)、檢查列值可否滿足一個條件表達式(check短語)數據庫系統的模式。型:是指對某一類數據的結構和屬性的說明,對結構的描述

4、和說明。值:是型的一個詳盡賦值。模式:是數據庫中全體數據的邏輯結構和特點的描述,對結構進行描述,不過涉及型。模式的一個詳盡值稱為模式的一個實例。模式反響的事數據的結構及其聯系,而實例反響的是數據庫某一時刻的狀態。數據庫的三級模式結構。模式(邏輯模式):是數據庫中全體數據的邏輯結構和特點的描述,需要定義數據想的名字,種類,取值范圍和數據之間的聯系,安全性完滿性要求等。外模式(子模式):數據庫中數據的局部邏輯結構。內模式(儲藏模式):是數據物理結構和儲藏方式的描述,是數據在數據庫內部的組織方式。第二章關系模型-關系數據結構、關系操作會集、關系完滿性拘束三部分組成。關系。域:一組擁有相同數據種類的值

5、的會集。關系:笛卡爾積的有限子集。候選碼:關系中某一屬性組的值能唯一地表記一個元組。候選碼的諸屬性稱為主屬性。不包括在任何候選碼中的屬性稱為非主屬性。專業整理分享圓滿WORD格式表。基本表(基本關系、基表):實質存在的表,是實質儲藏數據的邏輯表示。盤問表:是盤問結果對應的表。視圖表:是由基本表或其他視圖表導出的表,虛表,不對應實質儲藏的數據。關系代數:用對關系的運算來表達盤問。關系代數運算的三個要素:1.運算對象:關系;2.運算結果:關系;3:運算符:四類選擇運算是從行的角度進行的運算盤問信息系(IS系)全體學生Sdept=IS(Student)投影操作主若是從列的角度進行運算。投影此后不但取

6、消了原關系中的某些列,而且還可能取消某些元組(防范重復行)盤問學生的姓名和所在系,即求Student關系上學生姓名和所在系兩個屬性上的投影Snam,eSdept(Student)連接也稱連接:連接運算從R和S的廣義笛卡爾積RS中采用(R關系)在A屬性組上的值與(S關系)在B屬性組上值滿足比較關系的元組除專業整理分享圓滿WORD格式專業整理分享圓滿WORD格式第四章數據庫安全性控制。用戶身份鑒別:靜態口令鑒別,動向口令鑒別、生物特點鑒別、智能卡鑒別。存取控制:定義用戶權限。合法權限檢查。自主存取控制:授予不相同對象不相同權限。逼迫存取控制:數據庫中的內容帶有密級標記,只有擁有相應標記的用戶才能夠

7、訪問。專業整理分享圓滿WORD格式授權。授權:-對屬性列授權必定指出相應的屬性列名。grantselect,insert,delete,updat?eontableStudent,Scto用戶1,用戶2回收權限:revokeselectontableStudent,Scfrom用戶1,用戶2角色。數據庫角色是被命名的一組與數據庫操作相關的權限,角色是權限的集。合創辦角色、對角色進行授權、將角色授權給其他的角色也許用、戶角色權限的回收。創辦角色:createrole角色1,角色2給角色授權:grantselect,inser?tontableStudentto角色1,角色2將角色授權給其他用戶:

8、grant角色1to用戶1,用戶2回收角色權限:RevokeselectOntableStudentFrom角色1專業整理分享圓滿WORD格式視圖。創辦視圖:Createview視圖1AsSelect*FromStudentWhereSdept=CS第五章數據庫完滿性。數據庫的完滿性是指數據的正確性和相容性。數據的正確性是指額數據是吻合現實世界語義、反響當前實質情況的。數據的相容性是指數據庫同一對象在不相同的關系表中的數據是吻合邏輯的。保障數據庫的完滿性。供應定義完滿性拘束條件的體系。供應完滿性檢查的方法。進行違約辦理。數據完滿性拘束條件前文中已經表達,此處不再贅述。第六章1函數依賴。若關于R

9、(U)的任意一個可能的關系r,r中不能能存在兩個元組在X上的屬性值相等,而在Y上的屬性值不等,則稱“X函數確定Y”或“Y函數依賴于X”,記作XY專業整理分享圓滿WORD格式一個低一級范式的關系模式,經過模式分解能夠變換為若干個高一級范式的關系模式的會集,這種過程叫做規范化。1NF(第一范式)若是一個關系模式R的全部屬性都是不能分的基本數據項,則R1NF第一范式是對關系模式的最最少的要求。不滿足第一范式的數據庫模式不能夠稱為關系數據庫。2NF:若是R1NF,且每一個非主屬性完滿依賴于碼,則R2NF采用投影分解法將一個1NF的關系分解為多個2NF的關系3NF:若是R是2NF,且每個非主屬性都不傳達

10、依賴于R的候選碼,則R屬于3NF。2NF除掉非主屬性的部分依賴,3NF除掉非主屬性的傳達依賴BCNF的定義:BCNF不但對非主屬性有要求,而且也對主屬性有要求若是一個關系模式只有兩個屬性組成,則該關系模式必然屬于BCNF專業整理分享圓滿WORD格式專業整理分享圓滿WORD格式專業整理分享圓滿WORD格式第七章15.數據庫設計,數據庫設計分6個階段。需求解析。見解結構設計。邏輯結構設計。物理結構設計。數據庫推行。數據庫運行和保護。16.數據項是不能再分的數據單位數據結構反響了數據之間的組合關系。數據流是數據結構在系統內傳輸的路徑。數據儲藏是數據結構停留或保存的地方,也就是流的本源和去向之一。詳盡

11、辦理邏輯一般用判斷表或判斷樹來描述。數據字典是關于數據庫中數據的描述,是元數據,而不是數據自己。數據字典在需求解析階段建立,在數據庫設計過程中不斷更正、充分、完滿。見解結構是各種數據模型的共同基礎,它比數據模型更獨立于機器、更抽象,從而更加牢固。自頂向下的進行需求解析,自低向上的設計見解結構。定義數據庫模式主若是從系統的時間效率、空間效率、易保護等角度出發。物理設計的第一任務就是要確定選擇那些存取方法,即建立哪些存取路徑。專業整理分享圓滿WORD格式ER圖實體型:用矩形表示,矩形框內寫明實體名屬性:用橢圓形表示,并用無向邊將其與相應的實體型連接起來聯系:用菱形表示,菱形框內寫明聯系名,并用無向

12、邊分別與相關實體連接起來,同時在無向邊旁標上聯系的種類(1:1、1:n或m:n)聯系的屬性:聯系自己也是一種實體型,也能夠有屬性。若是一個聯系擁有屬性,則這些屬性也要用無向邊與該聯系連接起來在關系總數盡量少的情況下,該E-R圖變換后關系模式包括:學生(學號,姓名,性別,專業,出壽辰期,學院編號)課程(課程編號,課程名稱,課程種類,學分)學院(學院編號,學院名稱,辦公室電話,院長教職工編號)教職工(教職工編號,姓名,參加工作時間,職稱,學院編號)選課(學號,課程號,成績)專業整理分享圓滿WORD格式第八章游標。使用:聲明游標、打開游標、從一個游標中提守信息、關閉釋放游標。聲明游標:Declare

13、XXXcursorForselect*打開游標:openXXX關閉游標:closeXXX釋放游標:deallocateXXX聲明一個名為curAllCourse的游標,完成統計有多少學生選修了全部課程,輸出學生學號和姓名。declarecurAllCoursecursor/聲明游標forSELECTSNO,snamefromstudentwheresnoin(selectsnofromscgroupbysnohavingCOUNT(*)=(selectCOUNT(*)fromcourse)forreadonlyopencurAllCourse/打開游標declaresnochar(10),sn

14、amechar(10)/聲明變量專業整理分享圓滿WORD格式setsno=0fetchnextfromcurAllCourseintosno,sname/從游標中取數據whileFETCH_STATUS=0beginifsnameisnullsetsno=sno+1selectsno學號,sname姓名fetchnextfromcurAllCourseintosno,snameendCLOSEcurAllCourse/關閉游標DEALLOCATEcurAllCourse/釋放游標儲藏過程。近似與C語言中的函數。編寫一個儲藏過程,在sc表統計每個學生的平均分.createprocavergrad

15、e/創辦儲藏過程專業整理分享圓滿WORD格式asbeginselectsno,avg(grade)平均分fromscgroupbysnoendexecavergrade/執行儲藏過程dropprocedureavergrade/刪除儲藏過程對練習1的儲藏過程進行改進,增加一個輸入參數學號,使儲藏過程能依照輸入的學號計算該學生的平均分createprocavergradesnochar(10)asbeginselectsno,avg(grade)平均分fromscwheresno=snogroupbysnoendexecavergrade04dropprocedureavergrade在練習2的

16、基礎上增加一個輸出參數平均分,計算指定學號的平均分,爾后將平均分輸出。createprocavergradesnochar(10),savingintout專業整理分享圓滿WORD格式asbeginselectsaving=avg(grade)fromscwheresno=snogroupbysnoenddeclareavgintsetavg=0execavergrade02,avgoutselectavg平均分dropprocedureavergrade函數。函數必定返回指定種類,能夠返回表,有輸入參數。創辦成績變換函數,實現百分制成績與優、良、中、及格、不及格五個等級的換算.CREATEF

17、UNCTIONgrade_trans(gradeFLOAT)RETURNSCHAR(16)ASBEGINDECLAREclassCHAR(16)SELECTclass=CASEWHENgradeISNULLTHE還N沒參加考試WHENgrade=60andgrade=70andgrade=80andgrade90THE良N好ELSE優秀!ENDRETURN(class)END專業整理分享圓滿WORD格式selectdbo.grade_trans(88)盤問某個院系全部學生所選的每門課的平均成績。createfunctionaver(pchar(10)returnstableasreturn(s

18、electcno課程號,avg(grade)平均成績fromstudent,scwherestudent.sno=sc.snoandsdept=pgroupbycno)select*fromdbo.aver(cs)dropfunctionaver求某個院系選修了某門課的學生人數。createfunctionpeople(p0char(10),p1char(4)returnsintasbegindeclarerenshuintselectrenshu=(selectCOUNT(*)選課人數fromstudent,scwherestudent.sno=sc.snoandcno=p1andsdept

19、=p0)returnrenshuendselectdbo.people(cs,2)專業整理分享圓滿WORD格式dropfunctionpeople觸發器。CreatetriggerXXXOntablefor/after/insteadofInsert,delete,updateAs觸發器實質需要觸發內容For:用法同afterAfter:執行完sql語句此后進行檢查,檢查不吻合條件的話回滾rollback。after觸發器只幸虧表上指定。Insteadof:指定觸發器時代替SQL語句執行的,其優先級高于觸發語句的操作。例:為student表建立觸發器T1,當插入或更新表中的數據時,保證所操作的

20、記錄的sage值大于0。createtriggerT1onstudentafterinsert,updateasbegindeclaresageintselectsage=inserted.sagefrominsertedif(sage0)beginprint年齡錯誤rollbacktransactionendendupdatestudent專業整理分享圓滿WORD格式setsage=38wheresno=01insertintostudent(sno,sname,ssex,sage,sdept)values(2007011,張三,男,55,ma)為student表建立觸發器T2,禁止刪除編號

21、為“0001”的學生。insertintostudent(sno,sname,ssex,sage,sdept)values(0001,傻大個,男,19,is)createtriggerT2onstudentafterdeleteasbegindeclaresnochar(10)selectsno=deleted.snofromdeletedif(sno=0001)beginprint禁止刪除學號0001信息rollbacktransactionendenddeletestudentwheresno=0001droptriggerT2專業整理分享圓滿WORD格式第十章1事務。是一系列的數據庫操作

22、,是數據庫應用程序的基本邏輯單元。是用戶定義的一個數據庫操作序列,這些操作要么全做,要么全不做,是一個不能切割的工作單元。2事務的四個特點。原子性:事務是數據庫的邏輯工作單位,事務總包括的諸操作要么全做,要么全不做。一致性:數據庫只包括成功事務提交的結果,就說數據庫處于一致性狀態。隔斷性:一個事務的執行不能夠被其他事務攪亂。即一個事務的內部操作及使用的數據對其他并發事務是隔斷的,并發執行的各個事務之間不能夠互相攪亂。連續性:指一個事務一旦提交,他對數據庫中數據的改變就應該是永久性的。事務是恢復和并發控制的基本單位。3數據庫恢復。把數據庫從錯誤狀態恢復到某一已知的正確狀態的功能。運行事務非正常中

23、斷。數據扔掉。4故障種類。運行事務非正常中斷-恢復-事務撤掉。系統故障、介質故障、計算機病毒。5恢復實現技術。數據恢復的基本源理:冗余。建立冗余數據最常用的技術是數據轉儲和登記日志文件。6數據轉儲。靜態轉儲:是在系統中無運行事務時進行的轉儲操作。動向轉儲:是指轉儲時期贊同對數據庫進行存取或更正。即轉儲和用戶事務能夠并發執行。海量轉儲:每次轉儲全部數據庫。增量轉儲:指每次只轉儲前一次轉儲后更新過的數據。日志文件。是用來記錄事務對數據庫的更新操作的文件。專業整理分享圓滿WORD格式在事務故障恢復和系統故障恢復必定用日志文件。在動向轉儲方式中必定建立日志文件,后備副本和日志文件結合起來才能有效地恢復

24、數據庫。在靜態轉儲中也建立日志文件?8登記日志文件(對數據庫的操作記錄)。登記的次序嚴格按并發事務執行的時間次序。必定先寫日志文件,后寫數據庫。9事務故障的恢復。恢復子系統應利用日志文件撤掉此事務已對數據庫進行的更正,系統自動進行。系統故障恢復。以致故障原因可能有兩個:未完成事務對數據庫的更新可能已寫入數據庫。已提交事務對數據庫的更新可能還留在緩沖區沒來得及寫入數據庫。恢復策略是撤掉故障發生時未完成的事物,重做已完成的事物。介質故障的恢復。數據庫副本。第十一章1并發操作帶來的數據不一致性。并發操作破壞了事務的隔斷性。扔掉更正:兩個事務同時讀入同一數據并更正,T2提交的結構破壞了T1提交的結果,

25、以致T1的更正被扔掉。不能重復讀:事務1讀取數據后,事務2執行更新操作,使T1無法再現前一次讀取結果。讀臟數據:事務1更正某一數據并將其寫回磁盤,事務2讀取同一數據后,T1由于某種原因被撤掉,這時被T1修悔悟的數據恢復原值,T2讀到的數據就與數據庫中的數據不一致,則T2讀到的數據就為臟數據,即不正確的數據。并發控制的主要技術。關閉、時間戳、樂觀控制法、多版本并發控制等。關閉。專業整理分享圓滿WORD格式關閉就是事務T對某個數據對象操作從前,先向系統發出央求,對該數據對象進行加鎖。加鎖后事務T就對該數據對象有了必然的控制,在事務T釋放它的鎖從前,其他事務不能夠更新此數據對象。關閉種類。排他鎖(寫

26、鎖):若事務T對數據對象A加上X鎖,則只贊同T讀取和更正A,其他任何事務都不能夠再對A加任何種類的鎖,直到T釋放A上的鎖為止。保證了其他事務在T釋放A上的鎖從前不能夠再讀取和更正A。共享鎖(讀鎖):若事務T對數據對象A加上S鎖,則事務T能夠讀A但不能夠更正A,其他事務只能再對A加S鎖,而不能夠加X鎖,直到T釋放A上的S鎖為止。保證了其他事務能夠讀A,但在T釋放S鎖從前不能夠對A做任何更正。27.關閉協議。一級關閉協議:事務T在更正數據R從前必定先對其加X鎖,直到事務結束才釋放。可防范扔掉更正,保證事務T是可恢復的。二級關閉協議:在一級關閉協議基礎上增加事務T在讀取數據R從前必定先對其加S鎖,讀完后即可釋放S鎖。二級關閉協議能夠防范扔掉更正和讀“臟”數據三級關閉協議:在一級關閉協議的基礎上增加事務T在讀取數據R從前必定先對其加S鎖,直到事務結束才釋放。三級關閉協議可防范扔掉更正、讀臟數據和不能重復讀,簡單造成比很多的死鎖。活鎖和死鎖活鎖:有一個事務素來等待

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論