數(shù)據(jù)庫系統(tǒng)概論演示文稿_第1頁
數(shù)據(jù)庫系統(tǒng)概論演示文稿_第2頁
數(shù)據(jù)庫系統(tǒng)概論演示文稿_第3頁
數(shù)據(jù)庫系統(tǒng)概論演示文稿_第4頁
數(shù)據(jù)庫系統(tǒng)概論演示文稿_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、數(shù)據(jù)庫系統(tǒng)概論一、基本概念數(shù)據(jù)管理技術(shù) 什么是數(shù)據(jù)管理 對數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲(chǔ)、檢索和維護(hù),是數(shù)據(jù)處理的中心問題。 數(shù)據(jù)管理技術(shù)的發(fā)展過程 人工管理階段(40年代中-50年代中) 文件系統(tǒng)階段(50年代末-60年代中) 數(shù)據(jù)庫系統(tǒng)階段(60年代末-現(xiàn)在)人工管理階段應(yīng)用程序應(yīng)用程序數(shù)據(jù)集數(shù)據(jù)集應(yīng)用程序應(yīng)用程序數(shù)據(jù)集數(shù)據(jù)集應(yīng)用程序應(yīng)用程序數(shù)據(jù)集數(shù)據(jù)集n.文件系統(tǒng)階段應(yīng)用程序應(yīng)用程序文件文件應(yīng)用程序應(yīng)用程序文件文件2應(yīng)用程序應(yīng)用程序文件文件n存取存取方法方法.數(shù)據(jù)庫系統(tǒng)階段DBMS應(yīng)用程序1應(yīng)用程序2數(shù)據(jù)庫 數(shù)據(jù)庫數(shù)據(jù)庫DB 應(yīng)用系統(tǒng)應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具 操作系統(tǒng) OS 數(shù)據(jù)庫管理系數(shù)據(jù)

2、庫管理系統(tǒng)統(tǒng) DBMS 數(shù)據(jù)庫管理員數(shù)據(jù)庫管理員DBA用戶用戶用戶數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)DBS硬件支撐相關(guān)定義 數(shù)據(jù)庫的定義 數(shù)據(jù)庫(Database,簡稱DB)是長期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織的、可共享的數(shù)據(jù)集合。 數(shù)據(jù)庫管理系統(tǒng)的定義 數(shù)據(jù)庫管理系統(tǒng)(Database Management System,簡稱DBMS)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。 數(shù)據(jù)庫系統(tǒng)的定義 數(shù)據(jù)庫系統(tǒng)(Database System,簡稱DBS)是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。 由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶構(gòu)成。數(shù)據(jù)庫的基本特征 1)相互關(guān)聯(lián)的數(shù)據(jù)的集合

3、 2)用綜合的方法組織數(shù)據(jù),保證盡可能的提高訪問效率; 3)具有較小的數(shù)據(jù)冗余,可以供多個(gè)用戶共享; 4)具有較高的數(shù)據(jù)獨(dú)立性; 5)具有安全控制機(jī)制,能保證數(shù)據(jù)的安全、可靠; 6)允許并發(fā)的使用,能有效的、及時(shí)地處理數(shù)據(jù),并能保證數(shù)據(jù)的一致性和完整性。 數(shù)據(jù)庫數(shù)據(jù)庫DB 應(yīng)用系統(tǒng)應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具 操作系統(tǒng) OS 數(shù)據(jù)庫管理系數(shù)據(jù)庫管理系統(tǒng)統(tǒng) DBMS 數(shù)據(jù)庫管理員數(shù)據(jù)庫管理員DBA用戶用戶用戶重復(fù)一遍重復(fù)一遍數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)DBS硬件支撐數(shù)據(jù)模型 在數(shù)據(jù)庫中用數(shù)據(jù)模型這個(gè)工具來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實(shí)世界的模擬。數(shù)據(jù)模型應(yīng)滿足三方面要求:能比較

4、真實(shí)地模擬現(xiàn)實(shí)世界、容易為人所理解、便于在計(jì)算機(jī)上實(shí)現(xiàn) 數(shù)據(jù)模型的三要素 數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作、完整性規(guī)則 數(shù)據(jù)模型分成三個(gè)不同的層次 (1) 概念模型 也稱信息模型,它是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模,E-R圖是其常見表現(xiàn)方法。 (2) 邏輯模型 主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等,它是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模。 (3)物理模型 數(shù)據(jù)具體存儲(chǔ)方式。與數(shù)據(jù)庫、操作系統(tǒng)、硬件有關(guān)概念模型E-R(實(shí)體聯(lián)系) 圖范例班級班級班級班級-班長班長班長班長111:1聯(lián)系聯(lián)系課程課程選修選修學(xué)生學(xué)生mnm:n聯(lián)系聯(lián)系班級班級組成組成學(xué)生學(xué)生1n1:n聯(lián)系聯(lián)系邏輯模型 非關(guān)系模型 層次模型 網(wǎng)狀模型 關(guān)

5、系模型 數(shù)據(jù)結(jié)構(gòu):二維表 面向?qū)ο竽P?數(shù)據(jù)結(jié)構(gòu):對象關(guān)系數(shù)據(jù)模型的術(shù)語關(guān)系術(shù)語一般表格的術(shù)語關(guān)系名表名關(guān)系模式表頭(表格的描述)關(guān)系(一張)二維表元組記錄或行屬性列屬性名列名屬性值列值分量一條記錄中的一個(gè)列值非規(guī)范關(guān)系表中有表(大表中嵌有小表)關(guān)系的完整性 實(shí)體完整性 主碼(唯一標(biāo)識)不會(huì)取空值 參照完整性 外碼有效(外碼屬性可為NULL) 用戶定義的完整性 具體應(yīng)用相關(guān)的,如性別只能為男或女?dāng)?shù)據(jù)庫系統(tǒng)的三級模式和二級映像數(shù)據(jù)庫系統(tǒng)的三級模式模式(也稱邏輯模式)模式(也稱邏輯模式) 數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,所有用戶的公共數(shù)據(jù)視圖,綜合了所有用戶的需求,一個(gè)數(shù)據(jù)庫只有一個(gè)模式

6、與數(shù)據(jù)的物理存儲(chǔ)細(xì)節(jié)和硬件環(huán)境無關(guān),與具體的應(yīng)用程序、開發(fā)工具及高級程序設(shè)計(jì)語言無關(guān)外模式(也稱子模式或用戶模式)外模式(也稱子模式或用戶模式) 數(shù)據(jù)庫用戶(包括應(yīng)用程序員和最終用戶)使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述內(nèi)模式(也稱存儲(chǔ)模式)內(nèi)模式(也稱存儲(chǔ)模式) 是數(shù)據(jù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式,一個(gè)數(shù)據(jù)庫只有一個(gè)內(nèi)模式數(shù)據(jù)獨(dú)立性 外模式外模式/模式映像模式映像 當(dāng)模式改變時(shí),數(shù)據(jù)庫管理員修改有關(guān)的外模式模式映象,使外模式保持不變 應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨(dú)立性,簡稱數(shù)據(jù)的邏輯獨(dú)立性。 模式模式/內(nèi)模式映像內(nèi)模

7、式映像 當(dāng)數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)改變了(例如選用了另一種存儲(chǔ)結(jié)構(gòu)),數(shù)據(jù)庫管理員修改模式內(nèi)模式映象,使模式保持不變 應(yīng)用程序不受影響。保證了數(shù)據(jù)與程序的物理獨(dú)立性,簡稱數(shù)據(jù)的物理獨(dú)立性。二、數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì)步驟需求分析概念結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫運(yùn)行和維護(hù)數(shù)據(jù)庫實(shí)施數(shù)據(jù)庫物理設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)需求說明與數(shù)據(jù)說明概念結(jié)構(gòu)邏輯結(jié)構(gòu) 物理結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)各階段的典型成果 需求分析:得到數(shù)據(jù)流圖,數(shù)據(jù)字典 概念結(jié)構(gòu)設(shè)計(jì)(總體設(shè)計(jì)):完成概念模型設(shè)計(jì),得到E-R圖。完成模塊劃分。 邏輯結(jié)構(gòu)設(shè)計(jì)(詳細(xì)設(shè)計(jì)):得到規(guī)范化的數(shù)據(jù)庫關(guān)系模型,得到軟件功能模塊說明; 數(shù)據(jù)庫物理設(shè)計(jì):得到針對具體數(shù)據(jù)庫產(chǎn)品的建庫語句。數(shù)據(jù)流圖

8、 數(shù)據(jù)流圖(Data Flow Diagram):簡稱DFD,它從數(shù)據(jù)傳遞和加工角度,以圖形方式來表達(dá)系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程,是結(jié)構(gòu)化系統(tǒng)分析方法的主要表達(dá)工具及用于表示軟件模型的一種圖示方法。結(jié)構(gòu)化方法 結(jié)構(gòu)化方法是一種傳統(tǒng)的軟件開發(fā)方法,它是由結(jié)構(gòu)化分析、結(jié)構(gòu)化設(shè)計(jì)和結(jié)構(gòu)化程序設(shè)計(jì)三部分有機(jī)組合而成的。它的基本思想:把一個(gè)復(fù)雜問題的求解過程分階段進(jìn)行,而且這種分解是自頂向下,逐層分解,使得每個(gè)階段處理的問題都控制在人們?nèi)菀桌斫夂吞幚淼姆秶鷥?nèi)。 結(jié)構(gòu)化方法是軟件開發(fā)方法的一種,其他還有面向?qū)ο蠓椒ā⒃头ǖ?。結(jié)構(gòu)化分析方法 結(jié)構(gòu)化分析方法是以自頂向下,逐步求精

9、為基點(diǎn),以一系列經(jīng)過實(shí)踐的考驗(yàn)被認(rèn)為是正確的原理和技術(shù)為支撐,以數(shù)據(jù)流圖,數(shù)據(jù)字典,結(jié)構(gòu)化語言,判定表,判定樹等圖形表達(dá)為主要手段,強(qiáng)調(diào)開發(fā)方法的結(jié)構(gòu)合理性和系統(tǒng)的結(jié)構(gòu)合理性的軟件分析方法。結(jié)構(gòu)化設(shè)計(jì)方法 在軟件工程的需求分析階段,信息流是一個(gè)關(guān)鍵考慮,通常用數(shù)據(jù)流圖描繪信息在系統(tǒng)中加工和流動(dòng)的情況。面向數(shù)據(jù)流的設(shè)計(jì)方法定義了一些不同的“映射”,利用這些映射可以把數(shù)據(jù)流圖變換成軟件結(jié)構(gòu)。通常所說的結(jié)構(gòu)化設(shè)計(jì)方法(簡稱SD方法),也就是基于數(shù)據(jù)流的設(shè)計(jì)方法。關(guān)系規(guī)范化 就是將低一級關(guān)系的范式分解為若干高一級的范式,從而使各個(gè)關(guān)系模式達(dá)到某種程度的分離,讓一個(gè)關(guān)系描述一個(gè)概念、一個(gè)實(shí)體。 具體說,

10、就是通過將一個(gè)表分解為多個(gè)表 ,使每個(gè)表盡量的做到表示一個(gè)客觀事實(shí),從而解決了數(shù)據(jù)的冗余度高、刪除異常和插入異常等問題。 范式 第一范式 每個(gè)屬性都不可再分 第二范式 每個(gè)非主屬性都完全依賴于關(guān)系鍵 第三范式(最常用) 每個(gè)非主屬性都不傳遞依賴于關(guān)系鍵 BC范式 第四范式 第五范式第一范式學(xué)號姓名英語電工物理99001張三89876799002李四80907599003王五767780 學(xué)號姓名成績英語電工物理99001張三89876799002李四80907599003王五767780第二范式學(xué)號姓名院系99001李薇計(jì)算機(jī)99002王楓數(shù)學(xué)學(xué)號姓名院系課程編號分?jǐn)?shù)99001李薇計(jì)算機(jī)C01

11、0018699001李薇計(jì)算機(jī)C010027899001李薇計(jì)算機(jī)G020039899002王楓數(shù)學(xué)S0500267學(xué)號課程編號分?jǐn)?shù)99001C010018699001C010027899001G020039899002S0500267第三范式學(xué)號姓名院系99001李薇計(jì)算機(jī)99002肖文文 計(jì)算機(jī)99003宋華計(jì)算機(jī)99004王楓數(shù)學(xué)學(xué)號姓名院系住所99001李薇計(jì)算機(jī)B99002肖文文計(jì)算機(jī)B99003宋華計(jì)算機(jī)B99004王楓數(shù)學(xué)A院系住所計(jì)算機(jī)B數(shù)學(xué)A三、數(shù)據(jù)庫中的常用對象表 表由行和列組成,數(shù)據(jù)存儲(chǔ)在表中。 表擁有至少一個(gè)候選鍵,所謂候選鍵就是能唯一標(biāo)識一行的屬性。從候選鍵中選擇一個(gè)

12、作為主鍵。索引 索引依托于表而存在 索引用于加快數(shù)據(jù)的查詢速度 索引的副作用是導(dǎo)致寫入速度變慢和占用更多的存儲(chǔ)空間,因?yàn)閷?shí)際數(shù)據(jù)和索引都要寫入 聚集索引和非聚集索引的區(qū)別: 聚集索引是根據(jù)數(shù)據(jù)的實(shí)際物理存儲(chǔ)位置來排序的,一個(gè)表只能有一個(gè)聚集索引,聚集索引能提供更高的訪問速度 非聚集索引則跟實(shí)際物理存儲(chǔ)位置無關(guān)視圖 視圖是由一個(gè)或多個(gè)數(shù)據(jù)表(基本表)或視圖導(dǎo)出的虛擬表或查詢表,是關(guān)系數(shù)據(jù)庫系統(tǒng)提供給用戶以多種角度觀察數(shù)據(jù)庫中數(shù)據(jù)的重要機(jī)制。 視圖是虛表。因?yàn)橐晥D只儲(chǔ)存了她的定義(select語句),而沒有儲(chǔ)存視圖對應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍存放在原來的數(shù)據(jù)表(基表),數(shù)據(jù)與基表中數(shù)據(jù)同步,即對視圖的數(shù)

13、據(jù)進(jìn)行操作時(shí),系統(tǒng)根據(jù)視圖的定義去操作與視圖相關(guān)聯(lián)的基本表。觸發(fā)器 觸發(fā)器(trigger)是個(gè)特殊的存儲(chǔ)過程,它的執(zhí)行不是由程序調(diào)用,也不是手工啟動(dòng),而是由個(gè)事件來觸發(fā),比如當(dāng)對一個(gè)表進(jìn)行操作(insert,delete,update)時(shí)就會(huì)激活它執(zhí)行。觸發(fā)器經(jīng)常用于加強(qiáng)數(shù)據(jù)的完整性約束和業(yè)務(wù)規(guī)則等 觸發(fā)器依托于表而存在存儲(chǔ)過程 存儲(chǔ)過程(Stored Procedure)是一組為了完成特定功能的SQL語句集,經(jīng)編譯后存儲(chǔ)在數(shù)據(jù)庫中。用戶通過指定存儲(chǔ)過程的名字并給出參數(shù)(如果該存儲(chǔ)過程帶有參數(shù))來執(zhí)行它。 存儲(chǔ)過程類似于高級語言如C語言中函數(shù)的概念,不同的是存儲(chǔ)過程只能在數(shù)據(jù)庫服務(wù)器端運(yùn)行。

14、四、SQLSQL 結(jié)構(gòu)化查詢語言(Structured Query Language)是美國國家標(biāo)準(zhǔn)局(ANSI)和國際標(biāo)準(zhǔn)化組織(ISO)通過的標(biāo)準(zhǔn)。各廠家進(jìn)行自定義擴(kuò)充。 SQL Server的T-SQL, Oracle的PL-SQL SQL語句可以交互式執(zhí)行,可以嵌入執(zhí)行。 分為三部分 DDL (Data Definition Language)數(shù)據(jù)定義語言,用于定義數(shù)據(jù)庫中的數(shù)據(jù)對象。 DML (Data Manipulation Language)數(shù)據(jù)操縱語言, 用于操縱數(shù)據(jù)實(shí)現(xiàn)對數(shù)據(jù)庫的基本操作(查詢、插入、刪除和修改)。 DCL(Data Control Language)數(shù)據(jù)控

15、制語言SQL語言的動(dòng)詞DDLDDL范例create table workerinfor(編號 char(3) primary key,姓名 varchar(20),性別 char(2),年齡 int,職稱 varchar(20),工資 money,單位 varchar(20) );典型DML Select 列名或表達(dá)式 from 表或視圖 where 條件 Order by 排序方式 Update 表 set 列=值 where 條件 Delete from 表 where 條件 Insert Into 表(列1,列2) Values (值1,值2)DML范例 insert into work

16、erinfor(編號,姓名,性別,年齡,職稱,工資,單位) values (005,黃天亮,男,42,工程師,5000,修試所); update workerinfor set 職稱=助理工程師,工資=4500 where 編號=002; select 姓名,職稱 from workerinfor where 工資 in(select max(工資) from workerinfor ) or 工資 in(select min(工資) from workerinfor); Delete from workerinfor where 工資800;五、數(shù)據(jù)庫的備份和恢復(fù)數(shù)據(jù)庫備份 冷備份 關(guān)閉數(shù)據(jù)庫情況下,直接備份數(shù)據(jù)庫相關(guān)文件 熱備份 數(shù)據(jù)庫運(yùn)行情況下,進(jìn)行備份。對于Oracle數(shù)據(jù)庫,必須運(yùn)行在歸檔模式下。 邏輯備份 導(dǎo)出數(shù)據(jù)庫中的內(nèi)容,如Or

溫馨提示

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

評論

0/150

提交評論