版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數(shù)據(jù)庫系統(tǒng)理論復習資料什么是數(shù)據(jù)?什么是信息?數(shù)據(jù)和信息有什么區(qū)別和聯(lián)系? 數(shù)據(jù)(Data) 是數(shù)據(jù)庫中存儲的基本對象 數(shù)據(jù)的定義 描述事物的符號記錄數(shù)據(jù)的種類 文本、圖形、圖像、音頻、視頻、學生的檔案記錄、貨物的運輸情況等 信息與數(shù)據(jù)之間存在著固有聯(lián)系:數(shù)據(jù)是信息的符號表示或稱為載體;信息則是數(shù)據(jù)的內涵,是對數(shù)據(jù)語義的解釋。數(shù)據(jù)庫是長期儲存在計算機內、有組織的、可共享的大量數(shù)據(jù)的集合。數(shù)據(jù)庫的基本特征 數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存可為各種用戶共享 冗余度較小 數(shù)據(jù)獨立性較高 易擴展DBMS位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。 是基礎軟件,是一個大型復雜的軟件系統(tǒng) DBMS 的用
2、途 科學地組織和存儲數(shù)據(jù)、高效地獲取和維護數(shù)據(jù) DBMS 的主要功能 § 數(shù)據(jù)定義功能 提供數(shù)據(jù)定義語言(DDL) 定義數(shù)據(jù)庫中的數(shù)據(jù)對象§ 數(shù)據(jù)組織、存儲和管理 分類組織、存儲和管理各種數(shù)據(jù) 確定組織數(shù)據(jù)的文件結構和存取方式 實現(xiàn)數(shù)據(jù)之間的聯(lián)系 提供多種存取方法提高存取效率§ 數(shù)據(jù)操縱功能 提供數(shù)據(jù)操縱語言(DML) 實現(xiàn)對數(shù)據(jù)庫的基本操作 (查詢、插入、刪除和修改)§ 數(shù)據(jù)庫的事務管理和運行管理 數(shù)據(jù)庫在建立、運行和維護時由DBMS統(tǒng)一管理和控制保證數(shù)據(jù)的安全性、完整性、多用戶對數(shù)據(jù)的并發(fā)使用發(fā)生故障后的系統(tǒng)恢復§ 數(shù)據(jù)庫的建立和維護功能(
3、實用程序) 數(shù)據(jù)庫初始數(shù)據(jù)裝載轉換 數(shù)據(jù)庫轉儲 介質故障恢復 數(shù)據(jù)庫的重組織 性能監(jiān)視分析等§ 其它功能 DBMS與網(wǎng)絡中其它軟件系統(tǒng)的通信 兩個DBMS系統(tǒng)的數(shù)據(jù)轉換 異構數(shù)據(jù)庫之間的互訪和互操作v 什么是數(shù)據(jù)庫系統(tǒng)(Database System,DBS) v 數(shù)據(jù)庫系統(tǒng)的構成 § 數(shù)據(jù)庫§ 數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)§ 應用系統(tǒng)§ 數(shù)據(jù)庫管理員 什么是數(shù)據(jù)處理?圍繞著數(shù)據(jù)所做的工作都可稱為數(shù)據(jù)處理。即對各種數(shù)據(jù)進行收集、管理、加工和傳播的一系列活動的總和。如:對全班學生信息進行收集、存儲和查詢。數(shù)據(jù)處理包括哪些工作?v 1) 數(shù)據(jù)管理
4、:收集信息、將信息用數(shù)據(jù)表示并按類別組織保存;§ 收集和整理數(shù)據(jù);§ 組織和保存數(shù)據(jù);§ 進行數(shù)據(jù)維護;§ 提供數(shù)據(jù)查詢和數(shù)據(jù)統(tǒng)計功能。 v 2) 數(shù)據(jù)加工:對數(shù)據(jù)進行變換、抽取和運算; v 3) 數(shù)據(jù)傳播:在空間或時間上以各種形式傳播信息,而不改變數(shù)據(jù)的結構、性質和內容;數(shù)據(jù)管理技術v 什么是數(shù)據(jù)管理技術 § 對數(shù)據(jù)進行分類、組織、編碼、存儲、檢索和維護§ 數(shù)據(jù)處理的中心問題 數(shù)據(jù)管理和數(shù)據(jù)處理的關系是什么?v 數(shù)據(jù)管理是數(shù)據(jù)處理業(yè)務的基本環(huán)節(jié),而且是任何數(shù)據(jù)處理業(yè)務中必不可少的共有部分。v 數(shù)據(jù)處理是與數(shù)據(jù)管理相聯(lián)系的,數(shù)據(jù)管理技
5、術的優(yōu)劣,將直接影響數(shù)據(jù)處理的效率。v 應研制有效的數(shù)據(jù)管理軟件,以減少程序員的負擔。數(shù)據(jù)管理技術的產(chǎn)生和發(fā)展(續(xù))v 數(shù)據(jù)管理技術的發(fā)展動力 § 應用需求的推動§ 計算機硬件的發(fā)展§ 計算機軟件的發(fā)展 一、人工管理階段 二、文件系統(tǒng)階段 三、數(shù)據(jù)庫系統(tǒng)階段 數(shù)據(jù)庫系統(tǒng)的特點是什么?數(shù)據(jù)結構化 數(shù)據(jù)的共享性高,冗余度低,易擴充 數(shù)據(jù)獨立性高 數(shù)據(jù)由DBMS 統(tǒng)一管理和控制 數(shù)據(jù)獨立性高 物理獨立性指用戶的應用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。當數(shù)據(jù)的物理存儲改變了,應用程序不用改變。邏輯獨立性指用戶的應用程序與數(shù)據(jù)庫的邏輯結構是相互獨立的。數(shù)據(jù)的邏輯結
6、構改變了,用戶程序也可以不變。數(shù)據(jù)獨立性是由DBMS的二級映像功能來保證的DBMS提供的數(shù)據(jù)控制功能§ (1)數(shù)據(jù)的安全性(Security)保護保護數(shù)據(jù),以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞。§ (2)數(shù)據(jù)的完整性(Integrity)檢查將數(shù)據(jù)控制在有效的范圍內,或保證數(shù)據(jù)之間滿足一定的關系。§ (3)并發(fā)(Concurrency)控制對多用戶的并發(fā)操作加以控制和協(xié)調,防止相互干擾而得到錯誤的結果。§ (4)數(shù)據(jù)庫恢復(Recovery)將數(shù)據(jù)庫從錯誤狀態(tài)恢復到某一已知的正確狀態(tài)。應用程序與數(shù)據(jù)的對應關系(數(shù)據(jù)庫系統(tǒng))數(shù)據(jù)模型 在數(shù)據(jù)庫中用數(shù)據(jù)模
7、型這個工具來抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬。數(shù)據(jù)模型應滿足三方面要求能比較真實地模擬現(xiàn)實世界 容易為人所理解 便于在計算機上實現(xiàn)數(shù)據(jù)模型分為兩類(分屬兩個不同的層次)(1) 概念模型 也稱信息模型,它是按用戶的觀點來對數(shù)據(jù)和信息建模,用于數(shù)據(jù)庫設計。 (2) 邏輯模型和物理模型 邏輯模型主要包括網(wǎng)狀模型、層次模型、關系模型、面向對象模型等,按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于DBMS實現(xiàn)。物理模型是對數(shù)據(jù)最底層的抽象,描述數(shù)據(jù)在系統(tǒng)內部的表示方式和存取方法,在磁盤或磁帶上的存儲方式和存取方法。什么是數(shù)據(jù)結構?描述數(shù)據(jù)庫的組成對象,以及對象之間的聯(lián)系 數(shù)
8、據(jù)操作 對數(shù)據(jù)庫中各種對象( 型) 的實例( 值) 允許執(zhí)行的操作及有關的操作規(guī)則數(shù)據(jù)操作的類型 查詢 更新( 包括插入、刪除、修改)E-R 圖關系數(shù)據(jù)庫系統(tǒng)采用關系模型作為數(shù)據(jù)的組織方式 關系(Relation)一個關系對應通常說的一張表 元組(Tuple ) 表中的一行即為一個元組 屬性(Attribute)表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名 關系的完整性約束條件 § 實體完整性 § 參照完整性 § 用戶定義的完整性 模式(Schema)數(shù)據(jù)庫邏輯結構和特征的描述是型的描述反映的是數(shù)據(jù)的結構及其聯(lián)系模式是相對穩(wěn)定的數(shù)據(jù)庫系統(tǒng)模式的概念 數(shù)據(jù)
9、庫系統(tǒng)的三級模式結構 數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性 數(shù)據(jù)庫系統(tǒng)的三級模式結構 模式(Schema ) 外模式(External Schema ) 內模式(Internal Schema ) 模式(也稱邏輯模式) 數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述所有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求一個數(shù)據(jù)庫只有一個模式 模式的地位:是數(shù)據(jù)庫系統(tǒng)模式結構的中間層 與數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境無關與具體的應用程序、開發(fā)工具及高級程序設計語言無關外模式(也稱子模式或用戶模式)§ 數(shù)據(jù)庫用戶(包括應用程序員和最終用戶)使用的局部數(shù)據(jù)的邏輯結構和特征的描述§ 數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,
10、是與某一應用有關的數(shù)據(jù)的邏輯表示Ø 一個數(shù)據(jù)庫可以有多個外模式。但一個應用程序只能使用一個外模式 外模式(續(xù)) 內模式(也稱存儲模式)是數(shù)據(jù)物理結構和存儲方式的描述是數(shù)據(jù)在數(shù)據(jù)庫內部的表示方式一個數(shù)據(jù)庫只有一個內模式二級映象在DBMS 內部實現(xiàn)這三個抽象層次的聯(lián)系和轉換 § 外模式模式映像 § 模式內模式映像 一、外模式模式映象 v 模式:描述的是數(shù)據(jù)的全局邏輯結構v 外模式:描述的是數(shù)據(jù)的局部邏輯結構 v 同一個模式可以有任意多個外模式 v 每一個外模式,數(shù)據(jù)庫系統(tǒng)都有一個外模式模式映象,定義外模式與模式之間的對應關系 二、模式內模式映象 v 模式內模式映象定義
11、了數(shù)據(jù)全局邏輯結構與存儲結構之間的對應關系。§ 例如,說明邏輯記錄和字段在內部是如何表示的v 數(shù)據(jù)庫中模式內模式映象是唯一的v 該映象定義通常包含在模式描述中 數(shù)據(jù)庫的內模式 § 依賴于它的全局邏輯結構§ 獨立于數(shù)據(jù)庫的用戶視圖,即外模式§ 獨立于具體的存儲設備 § 將全局邏輯結構中所定義的數(shù)據(jù)結構及其聯(lián)系按照一定的物理存儲策略進行組織,以達到較好的時間與空間效率 數(shù)據(jù)庫的外模式 § 面向具體的應用程序§ 定義在邏輯模式之上§ 獨立于存儲模式和存儲設備§ 當應用需求發(fā)生較大變化,相應外模式不能滿足其視圖要
12、求時,該外模式就得做相應改動 § 設計外模式時應充分考慮到應用的擴充性 一、硬件平臺及數(shù)據(jù)庫二、軟件 DBMS支持DBMS 運行的操作系統(tǒng) 與數(shù)據(jù)庫接口的高級語言及其編譯系統(tǒng) 以DBMS 為核心的應用開發(fā)工具 為特定應用環(huán)境開發(fā)的數(shù)據(jù)庫應用系統(tǒng) 三、人員 數(shù)據(jù)庫管理員 系統(tǒng)分析員和數(shù)據(jù)庫設計人員 應用程序員 用戶 第一章 緒論12 存在問題:研究生與學生是否作為一類實體型如何給聯(lián)系起名字是否該區(qū)分教授副教授?1n1學校1n1nnmn1n1系班級教研室學生課程教員系班選修系教班生室教指導校系n13存在問題:原材料和零件與倉庫的存儲聯(lián)系是否可以作為一個聯(lián)系原材料和倉庫的聯(lián)系類型倉庫是一個
13、實體,有多個同學畫成了兩個實體q產(chǎn)品零件原材料倉庫構成存儲制造存放mnpn1mn1)求供應工程J1零件的供應商號碼SNO:Sno(Jno=J1(SPJ))GET W (SPJ.SNO) : Jno=J12)求供應工程J1零件P1的供應商號碼SNO:Sno(Jno=J1Pno=P1(SPJ)Sno(Jno=J1(Pno=P1(SPJ)Sno(Jno=J1 (SPJ) (Pno=P1(SPJ)GET W (SPJ.SNO) : Jno=J1Pno=P13)求供應工程J1零件為紅色的供應商號碼SNO:Sno(COLOR=紅 (P)Jno=J1 (SPJ))RANGE P PXGET W (SPJ.S
14、NO) : $PX(PX.COLOR = 紅 SPJ.JNO = J1PX.PNO = SPJ.PNO)4)求沒有使用天津供應商生產(chǎn)的紅色零件的工程號JNO:Jno(J)- JNO(city=天津Color=紅 (SSPJP)GET W (J.JNO) : Ø$SPJX(SPJX.JNO=J.JNO $SX(SX.SNO = SPJX.SNOSX.CITY=天津) $PX(PX.PNO = SPJX.PNO PX.COLOR = 紅)5)求至少用了供應商S1所供應的全部零件的工程號JNO: Jno,Pno(SPJ)÷ Pno(Sno=S1 (SPJ)RANGE SPJ SP
15、JXRANGE SPJ SPJYRANGE P PXGET W (J.JNO) : PX($SPJX(SPJX.PNO = PX.PNO SPJX.SNO = S1)à $SPJY(SPJY.PNO=PX.PNO SPJY.JNO=J.JNOSPJX.SNO=S1)3用SQL語句建立第二章習題5中的四個表。S(SNO,SNAME,STATUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY);1) 供應商表S由供應商代碼(SNO)、供應商姓名(SNAME)、供應商狀態(tài)(STATUS)、供
16、應商所在城市(CITY)組成:CREATE TABLE S(Sno CHAR(2) UNIQUE,Sname CHAR(6) ,Status Numric(2),City CHAR(4)2) 零件表P由零件代碼(PNO)、零件名(PNAME)、顏色(COLOR)、重量(WEIGHT)組成:CREATE TABLE P(Pno CHAR(2) UNIQUE,Pname CHAR(6),COLOR CHAR(2), WEIGHT Integer(2)3) 工程項目表J由工程項目代碼(JNO)、工程項目名(JNAME)、所在城市(CITY)組成:CREATE TABLE J(Jno CHAR(2)
17、UNlQUE,JNAME CHAR(8), CITY CHAR(4)4) 供應情況表SPJ由供應商代碼(SNO)、零件代碼(PNO)、工程項目代碼(JNO)、供應數(shù)量(QTY)組成:CREATE TABLE SPJ(Sno CHAR(2),Pno CHAR(2),JNO CHAR(2), QTY Numnic(2)4針對上題中建立的四個表試用SQL語言完成第二章習題5中的查詢:1) 求供應工程J1零件的供應商號碼SNO:SELECT DISTINCT SNO FROM SPJ WHERE JNO=J1盡量不要寫成SELECT DISTINCT SNO FROM SPJ WHERE JNO LI
18、KE J12) 求供應工程J1零件P1的供應商號碼SNO:SELECT DISTINCT SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'3) 求供應工程J1零件為紅色的供應商號碼SNO:SELECT SNO FROM SPJ,P WHERE JNO='J1' AND SPJ.PNO=P.PNO AND COLOR='紅'不要忘了連接條件SPJ.PNO=P.PNO4) 求沒有使用天津供應商生產(chǎn)的紅色零件的工程號JNO:SELECT DISTINCT JNO FROM J WHERE JNO NOT
19、IN (SELECT JNO FROM SPJ,P,S WHERE S.CITY='天津' AND COLOR='紅' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO)。 不能使用existsCITY NOT LIKE 天津 或者 CITY != 天津5) 求至少用了供應商S1所供應的全部零件的工程號JNO。select distinct jno /*不存在這樣的工程,它沒有使用任何一種由S1供應的零件*/from spj spjzwhere not exists( select * from spj spjx where sno = &
20、#39;S1' and not exists( select * from spj spjy where spjy.pno = spjx.pno and spjy.jno=spjz.jno and spjy.sno='S1');5針對習題3中的四個表試用SQL語言完成以下各項操作:(1)找出所有供應商的姓名和所在城市。 SELECT SNAME,CITY FROM S(2)找出所有零件的名稱、顏色、重量。SELECT PNAME,COLOR,WEIGHT FROM P(3)找出使用供應商S1所供應零件的工程號碼。 SELECT DISTINCT JNO FROM SPJ
21、 WHERE SNO='S1'(4)找出工程項目J2使用的各種零件的名稱及其數(shù)量。SELECT PNAME,QTY FROM SPJ,P WHERE P.PNO=SPJ.PNO AND SPJ.JNO='J2'(5)找出上海廠商供應的所有零件號碼。SELECT PNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND CITY='上海'(6)出使用上海產(chǎn)的零件的工程名稱。SELECT JNAME FROM SPJ,S,JWHERE S.SNO=SPJ.SNO AND S.CITY='上海' AND J.JNO=
22、SPJ.JNO(7)找出沒有使用天津產(chǎn)的零件的工程號碼。SELECT DISTINCT JNO FROM J WHERE JNO NOT IN (SELECT DIST JNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND S.CITY='天津') 不能寫成SELECT JNOFROM SPJWHERE NOT EXISTS(SELECT * FROM SWHERE S.CITY = 天津)也不能寫成SELECT JNOFROM J,SPJWEHRE CITY != 天津 AND J.JNO = SPJ.JNO(8)把全部紅色零件的顏色改成藍色。UPDA
23、TE P SET COLOR='藍' WHERE COLOR='紅'(9)由S5供給J4的零件P6改為由S3供應。 UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6'部分同學where條件不全或寫成 UPDATE SPJ SET SNO='S5' WHERE JNO='J4' AND PNO='P6'(10)從供應商關系中刪除供應商號是S2的記錄,并從供應情況關系中刪除相應的
24、記錄。 A、DELETE FROM S WHERE SNO=S2 B、DELETE FROM SPJ WHERE SNO=S2 不能寫成DELETE FROM SPJ,S WHERE SNO=S2(11)請將(S2,J6,P4,200)插入供應情況關系。 INSERT INTO SPJ VALUES(S2,J6,P4,200) 有同學沒加引號計算機系統(tǒng)安全性 為計算機系統(tǒng)建立和采取的各種安全保護措施,以保護計算機系統(tǒng)中的硬件 、軟件 及數(shù)據(jù) ,防止其因偶然或惡意的原因使系統(tǒng)遭到破壞,數(shù)據(jù)遭到更改或泄露等。 計算機系統(tǒng)的三類安全性問題 技術安全類 管理安全類 政策法律類 數(shù)據(jù)庫安全性控制的常用方
25、法 用戶標識和鑒定 存取控制 視圖 審計 密碼存儲 存取控制機制組成 定義用戶權限 合法權限檢查 用戶權限定義和合法權檢查機制一起組成了 DBMS 的安全子系統(tǒng) 常用存取控制方法 § 自主存取控制 (Discretionary Access Control , 簡稱DAC ) C2 級 靈活 § 強制存取控制 (Mandatory Access Control , 簡稱 MAC ) B1 級 嚴格 4.2 數(shù)據(jù)庫安全性控制 4.2.1 用戶標識與鑒別4.2.2 存取控制4.2.3 自主存取控制方法4.2.4 授權與回收4.2.5 數(shù)據(jù)庫角色4.2.6 強制存取控制方法4.2
26、.3 自主存取控制方法 v 通過 SQL 的 GRANT 語句和 REVOKE 語句實現(xiàn)v 用戶權限組成數(shù)據(jù)對象操作類型v 定義用戶存取權限:定義用戶可以在哪些數(shù)據(jù)庫對象上進行哪些類型的操作v 定義存取權限稱為授權 自主存取控制方法(續(xù)) v 關系數(shù)據(jù)庫系統(tǒng)中存取控制對象 例 把對Student 表和Course 表的全部權限授予用戶U2 和U3 GRANT ALL PRIVILIGES ON TABLE Student, Course TO U2, U3; 例題 例3 把對表SC 的查詢權限授予所有用戶 GRANT SELECT ON TABLE SC TO PUBLIC; 例5 把對表SC
27、 的INSERT 權限授予U5 用戶,并允許他再將此權限授予其他用戶 GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION;REVOKE (續(xù)) 例8 把用戶U4 修改學生學號的權限收回 REVOKE UPDATE(Sno)ON TABLE Student FROM U4;數(shù)據(jù)庫角色 被命名的一組與數(shù)據(jù)庫操作相關的權限 例11通過角色來實現(xiàn)將一組權限授予一個用戶。步驟如下:1. 首先創(chuàng)建一個角色 R1 CREATE ROLE R1;2. 然后使用GRANT語句,使角色R1擁有Student表的SELECT、UPDATE、INSERT權限 GRANT
28、SELECT,UPDATE,INSERT ON TABLE Student TO R1;3. 將這個角色授予王平,張明,趙玲。使他們具有角色R1 所包含的全部權限 GRANT R1 TO 王平,張明,趙玲; 4. 可以一次性通過R1 來回收王平的這3 個權限 REVOKE R1 FROM 王平; 強制存取控制方法主體 是系統(tǒng)中的活動實體 DBMS 所管理的實際用戶 代表用戶的各進程 客體 是系統(tǒng)中的被動實體,是受主體操縱的 文件 基表 索引 視圖 主體的敏感度標記稱為許可證級別(Clearance Level)客體的敏感度標記稱為密級(Classification Level) 強制存取控制規(guī)
29、則 (1) 僅當主體的許可證級別大于或等于 客體的密級時,該主體才能讀 取相應的客體 (2) 僅當主體的許可證級別等于 客體的密級時,該主體才能寫 相應的客體 視圖機制 把要保密的數(shù)據(jù)對無權存取這些數(shù)據(jù)的用戶隱藏起來,對數(shù)據(jù)提供一定程度的安全保護 審計分為§ 用戶級審計針對自己創(chuàng)建的數(shù)據(jù)庫表或視圖進行審計 記錄所有用戶對這些表或視圖的一切成功和(或)不成功的訪問要求以及各種類型的SQL操作 § 系統(tǒng)級審計 DBA設置 監(jiān)測成功或失敗的登錄要求 監(jiān)測GRANT和REVOKE操作以及其他數(shù)據(jù)庫級權限下的操作AUDIT 語句: 設置審計功能 NOAUDIT 語句:取消審計功能 審
30、計(續(xù)) 例15對修改SC表結構或修改SC表數(shù)據(jù)的操作進行審計 AUDIT ALTER,UPDATE ON SC;例16取消對SC表的一切審計 NOAUDIT ALTER,UPDATE ON SC;數(shù)據(jù)加密防止數(shù)據(jù)庫中數(shù)據(jù)在存儲和傳輸中失密的有效手段加密的基本思想加密方法替換方法 置換方法 混合方法數(shù)據(jù)庫完整性數(shù)據(jù)的正確性和相容性數(shù)據(jù)的完整性防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),也就是防止數(shù)據(jù)庫中存在不正確的數(shù)據(jù)防范對象:不合語義的、不正確的數(shù)據(jù)數(shù)據(jù)的安全性保護數(shù)據(jù)庫防止惡意的破壞和非法的存取防范對象:非法用戶和非法操作1. 提供定義完整性約束條件的機制 2. 提供完整性檢查的方法 3. 違約處理
31、 數(shù)據(jù)庫完整性 實體完整性 參照完整性 用戶定義的完整性實體完整性定義( 續(xù))例2將SC表中的Sno,Cno屬性組定義為碼 CREATE TABLE SC (Sno CHAR(9) NOT NULL, Cno CHAR(4) NOT NULL, Grade SMALLINT, PRIMARY KEY (Sno,Cno) /*只能在表級定義主碼*/ ); 關系模型的參照完整性定義 在CREATE TABLE 中用FOREIGN KEY 短語定義哪些列為外碼 用REFERENCES 短語指明這些外碼參照哪些表的主碼 例如,關系SC中一個元組表示一個學生選修的某門課程的成績,(Sno,Cno)是主碼
32、。Sno,Cno分別參照引用Student表的主碼和Course表的主碼 例3 定義SC中的參照完整性 CREATE TABLE SC (Sno CHAR(9) NOT NULL, Cno CHAR(4) NOT NULL, Grade SMALLINT, PRIMARY KEY (Sno, Cno), /*在表級定義實體完整性*/ FOREIGN KEY (Sno) REFERENCES Student(Sno), /*在表級定義參照完整性*/ FOREIGN KEY (Cno) REFERENCES Course(Cno) /*在表級定義參照完整性*/ ); 參照完整性檢查和違約處理 違約處理 參照完整性違約處理1. 拒絕(NO ACTION)執(zhí)行2. 級聯(lián)(CASCADE)操作3. 設置為空值(SET-NULL) 對于參照完整性,除了應該定義外碼,還應定義外
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 互聯(lián)網(wǎng)企業(yè)寫字樓中介協(xié)議
- 劇院建設渣土運輸協(xié)議模板
- 化工原料運輸合作協(xié)議
- 數(shù)據(jù)中心廠房裝修合同
- 印刷廠裝修合同簡易模板
- 家電賣場翻新工程協(xié)議
- 保險業(yè)股權融資居間合同
- 孵化器裝修項目協(xié)議
- 咖啡廳基礎裝修合同樣本
- 家具配送安裝合同范本
- 護士的護理職業(yè)生涯規(guī)劃
- 2024年高考語文復習:古詩文閱讀強化練習題匯編(含答案解析)
- 不良反應事件及嚴重不良事件處理的標準操作規(guī)程藥物臨床試驗機構GCP SOP
- 義務教育數(shù)學課程標準(2022年版)重點
- 2021上海春考作文題解析及范文(怎樣做與成為什么樣人)
- 醫(yī)療器械采購投標方案(技術方案)
- 2024-2030年全球及中國水楊酸行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 體育館改造裝修工程施工組織設計
- 137案例黑色三分鐘生死一瞬間事故案例文字版
- 【魔鏡洞察】2024藥食同源保健品滋補品行業(yè)分析報告
- 2024-2030年中國潤滑油行業(yè)發(fā)展趨勢與投資戰(zhàn)略研究報告
評論
0/150
提交評論