歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

《數(shù)據(jù)庫原理》ppt.ppt

  • 資源ID:6577189       資源大小:1,010KB        全文頁數(shù):67頁
  • 資源格式: PPT        下載積分:14.9積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要14.9積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

《數(shù)據(jù)庫原理》ppt.ppt

1 數(shù)據(jù)庫系統(tǒng)原理 主講人 彭一明教材 數(shù)據(jù)庫系統(tǒng)原理教程 王珊等 清華大學(xué)出版社 2 前言 1 學(xué)習(xí)該課程的目的2 學(xué)習(xí)內(nèi)容3 學(xué)習(xí)方法與要求4 參考書 3 1 學(xué)習(xí)該課程的目的 數(shù)據(jù)庫技術(shù)是數(shù)據(jù)管理的最新技術(shù) 20世紀(jì)60年代中期 它的出現(xiàn)極大地促進(jìn)了計算機(jī)應(yīng)用向各行各業(yè)滲透 目前基于數(shù)據(jù)庫技術(shù)的計算機(jī)應(yīng)用已成為計算機(jī)應(yīng)用的主流 占60 電子政務(wù)與管理信息系統(tǒng) MIS 政府 企業(yè) 銀行 飯店 旅游 醫(yī)療 遠(yuǎn)程教育 網(wǎng)絡(luò)應(yīng)用 計費(fèi)系統(tǒng) 目錄服務(wù) 人工智能系統(tǒng) 專家系統(tǒng) 地理信息系統(tǒng) 工程 科學(xué)統(tǒng)計以及圖形 圖象 CAD 多媒體等領(lǐng)域有廣泛的應(yīng)用 其數(shù)據(jù)庫技術(shù)起著關(guān)鍵作用 數(shù)據(jù)庫系統(tǒng)原理是從事數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā) 維護(hù)和數(shù)據(jù)庫管理系統(tǒng)的建立及相關(guān)理論研究必備的基礎(chǔ)知識 4 2 學(xué)習(xí)內(nèi)容 本課以關(guān)系數(shù)據(jù)庫為重點(diǎn)比較全面講解數(shù)據(jù)庫的基本概念和基本技術(shù) 第一章緒論概述數(shù)據(jù)管理的進(jìn)展 數(shù)據(jù)模型 數(shù)據(jù)庫 數(shù)據(jù)庫系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng) 數(shù)據(jù)庫工程的基本概念 第二章 第四章講解關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫數(shù)據(jù)模型 數(shù)據(jù)語言 關(guān)系數(shù)據(jù)庫語言SQL 關(guān)系數(shù)據(jù)庫設(shè)計理論第五章數(shù)據(jù)庫保護(hù)安全性 完整性 并發(fā)控制 恢復(fù)第六章數(shù)據(jù)庫設(shè)計第七章關(guān)系數(shù)據(jù)庫管理系統(tǒng)產(chǎn)品實例第八章數(shù)據(jù)庫技術(shù)新進(jìn)展 5 3 學(xué)習(xí)方法與要求 該課的特點(diǎn) 以學(xué)習(xí)數(shù)據(jù)庫的基本概念 基本技術(shù)和數(shù)據(jù)庫設(shè)計為主 不象學(xué)習(xí)sqlserver oracle 學(xué)習(xí)語言 編程為主 有些概念和語句的語法不僅要熟記 還要了解用在何處 作用是什么 怎么使用 認(rèn)真看書 聽講 復(fù)習(xí) 思考 討論先修課有操作系統(tǒng) 離散數(shù)學(xué) 數(shù)據(jù)結(jié)構(gòu)認(rèn)真完成作業(yè)及每章同步練習(xí)題上機(jī) 通過MSSqlSerevr2000學(xué)習(xí)sql語言 6 兩次面授課程兩次語音答疑期末復(fù)習(xí)串講課程論壇 7 4 參考書 1 薩師煊 王珊 數(shù)據(jù)庫系統(tǒng)概論 第四版 高等教育出版社 2 徐潔磐 王銀銀 數(shù)據(jù)庫系統(tǒng)引論 1996南京大學(xué)出版社 3 王能斌 數(shù)據(jù)庫系統(tǒng) 1995電子工業(yè)出版社 4 李昭原主編 羅曉沛主審 數(shù)據(jù)庫技術(shù)新進(jìn)展 1997清華大學(xué)出版社 5 余晨 李文炬編著 SQLServer2000培訓(xùn)教程 2001年7月第1版2003年9月第7次印刷 清華大學(xué)出版社 6 上機(jī)內(nèi)容 sql概要語法 隨課件光盤一起發(fā)布 8 第一章緒論 理解數(shù)據(jù) 數(shù)據(jù)庫 數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)的概念 掌握數(shù)據(jù)庫系統(tǒng)的特點(diǎn) 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu) 數(shù)據(jù)庫系統(tǒng)的組成 掌握數(shù)據(jù)模型的相關(guān)概念 熟練掌握E R模型的表示方法 9 1 數(shù)據(jù) 實際上是描述事物的符號記錄 2 數(shù)據(jù)管理是指對數(shù)據(jù)的分類 組織 編碼 儲存 檢索和維護(hù) 經(jīng)歷了三個階段 1 人工管理階段 2 文件系統(tǒng)階段 3 數(shù)據(jù)庫系統(tǒng)階段3 數(shù)據(jù)庫 database 簡稱DB 數(shù)據(jù)庫是長期儲存在計算機(jī)內(nèi) 有組織的 可共享的數(shù)據(jù)集合 4 數(shù)據(jù)庫管理系統(tǒng) 簡稱DBMS 是數(shù)據(jù)管理軟件 功能 數(shù)據(jù)庫在建立 運(yùn)用和維護(hù)時由數(shù)據(jù)庫管理系統(tǒng)統(tǒng)一管理 統(tǒng)一控制 5 數(shù)據(jù)庫系統(tǒng) 簡稱DBS 指在計算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成 一般由數(shù)據(jù)庫 數(shù)據(jù)庫管理系統(tǒng) 及其開發(fā)工具 應(yīng)用系統(tǒng) 數(shù)據(jù)庫管理員和用戶構(gòu)成 10 數(shù)據(jù)庫系統(tǒng)特點(diǎn) 4頁 5點(diǎn) 1 數(shù)據(jù)的結(jié)構(gòu)化 面向全組織復(fù)雜的數(shù)據(jù)結(jié)構(gòu) 2 數(shù)據(jù)的共享性好 冗余度小 3 具有較高的數(shù)據(jù)與程序獨(dú)立性 4 數(shù)據(jù)由DBMS統(tǒng)一管理和控制 安全性控制 完整性控制 并發(fā)控制 數(shù)據(jù)庫恢復(fù) 5 數(shù)據(jù)的最小存取單位是數(shù)據(jù)項 7 數(shù)據(jù)的邏輯獨(dú)立性當(dāng)數(shù)據(jù)的總體邏輯結(jié)構(gòu)改變時 通過數(shù)據(jù)的總體邏輯結(jié)構(gòu)與某類應(yīng)用所涉及的局部邏輯結(jié)構(gòu)之間的映象或轉(zhuǎn)換功能保持?jǐn)?shù)據(jù)的局部邏輯結(jié)構(gòu)不變 由于應(yīng)用程序是依據(jù)數(shù)據(jù)的局部邏輯結(jié)構(gòu)編寫的 所以應(yīng)用程序不必修改 這就是數(shù)據(jù)與程序的邏輯獨(dú)立性 簡稱數(shù)據(jù)的邏輯獨(dú)立性 11 8 數(shù)據(jù)的物理獨(dú)立性當(dāng)數(shù)據(jù)的存儲結(jié)構(gòu) 或物理結(jié)構(gòu) 改變時 通過數(shù)據(jù)的存儲結(jié)構(gòu)與邏輯結(jié)構(gòu)之間的映象或轉(zhuǎn)換功能保持?jǐn)?shù)據(jù)的邏輯結(jié)構(gòu)不變 從而應(yīng)用程序也不必改變 這就是數(shù)據(jù)與程序的物理獨(dú)立性 簡稱數(shù)據(jù)的物理獨(dú)立性 9 數(shù)據(jù)模型的重要性及組成數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心與基礎(chǔ) 各種機(jī)器上實現(xiàn)的DBMS軟件都基于某種數(shù)據(jù)模型 數(shù)據(jù)庫發(fā)展階段的劃分也是以數(shù)據(jù)模型的發(fā)展作為主要的依據(jù)和標(biāo)志 10 數(shù)據(jù)模型由三部分組成 數(shù)據(jù)結(jié)構(gòu) 數(shù)據(jù)操作 完整性約束 12 數(shù)據(jù)模型概述 在數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象 表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息 數(shù)據(jù)模型就是現(xiàn)實世界的模擬 數(shù)據(jù)模型應(yīng)滿足三方面要求 一是能比較真實地模擬觀實世界 二是容易為人所理解 三是便于在計算機(jī)上實現(xiàn) 模型劃分為兩類 它們分屬于兩個不同的層次 第一類模型是概念模型 也稱信息模型 它是按用戶的觀點(diǎn)對數(shù)據(jù)和信息建模 另一類模型是數(shù)據(jù)模型 它是按計算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模 主要包括網(wǎng)狀模型 層次模型 關(guān)系模型等 13 數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ) 各種機(jī)器上實現(xiàn)的DBMS軟件都是基于某種數(shù)據(jù)模型的 為了把現(xiàn)實世界中的具體事物抽象 組織為某一DBMS支持的數(shù)據(jù)模型 通常分二步 首先把現(xiàn)實世界中的客觀對象抽象為某一種信息結(jié)構(gòu) 這種信息結(jié)構(gòu)并不依賴于具體的計算機(jī)系統(tǒng) 不是某個DBMS支持的數(shù)據(jù)模型 而是概念級的模型 概念模型 然后再把概念模型轉(zhuǎn)換為計算機(jī)上某一DBMS支持的數(shù)據(jù)模型 概念模型實際上是現(xiàn)實世界到機(jī)器世界的一個中間層次 用于信息世界的建模 是現(xiàn)實世界到信息世界的第一層抽象 是用戶與數(shù)據(jù)庫設(shè)計人員之間進(jìn)行交流的語言 概念模型 14 圖1 10對象的抽象模型 15 1 信息世界的基本概念 信息世界 概念模型 涉及的概念主要有 1 實體 entity 客觀存在并可相互區(qū)別的事物稱為實體 實體可以是具體的人 事 物 也可以是抽象的概念或聯(lián)系 例如 一個職工 一個學(xué)生 一個部門 一門課 學(xué)生的一次選課 部門的一次訂貨 老師與系的工作關(guān)系 即某位老師在某系工作 等 2 屬性 attribute 實體所具有的某一特性稱為屬性 一個實體可以由若干個屬性來刻畫 例如 學(xué)生實體可以由學(xué)號 姓名 性別 出生年份 系 入學(xué)時間等屬性組成 94002268 張山 男 1976 計算機(jī)系 1994 這些屬性組合起來表征了一個學(xué)生 16 3 碼 key 唯一標(biāo)識實體的屬性集稱為碼 例如 學(xué)號是學(xué)生實體的碼 4 域 domain 屬性的取值范圍稱為該屬性的域 例如 學(xué)號的域為8位整數(shù) 姓名的域為字符串集合 年齡的域為小于35的整數(shù) 性別的域為 男 女 5 實體型 entitytype 用實體名及其屬性名集合來抽象和刻畫同類實體 稱為實體型 例如 學(xué)生 學(xué)號 姓名 性別 出生年份 系 入學(xué)時間 就是一個實體型 6 實體集 entityset 同型實體的集合稱為實體集 例如 全體學(xué)生就是一個實體集 17 7 聯(lián)系 relationship 在現(xiàn)實世界中 事務(wù)內(nèi)部以及事務(wù)之間是有聯(lián)系的 在信息世界中 這些聯(lián)系反映為實體內(nèi)部的聯(lián)系和實體之間的聯(lián)系 實體內(nèi)部的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系 兩個實體型之間的聯(lián)系可以分為三類 一對一聯(lián)系 1 1 如果對于實體集A中的每一個實體 實體集B中至多有一個實體與之聯(lián)系 反之亦然 稱實體集A與實體集B具有一對一聯(lián)系 記為1 1 例如 班級與班長 18 一對多聯(lián)系 1 n 如果對于實體集A中的每一個實體 實體集B中有n個實體 n 0 與之聯(lián)系 反之對于實體集B中的每一個實體 實體集A中至多只有一個實體與之聯(lián)系 稱實體集A與實體集B具有一對多聯(lián)系 記為1 n 例如 班級與學(xué)生 19 多對多聯(lián)系 m n 如果對于實體集A中的每一個實體 實體集B中有n個實體 n 0 與之聯(lián)系 反之對于實體集B中的每一個實體 實體集A中有m個實體 m 0 與之聯(lián)系 稱實體集A與實體集B具有多對多聯(lián)系 記為m n 例如 課程與學(xué)生 20 概念模型應(yīng)該能夠方便 準(zhǔn)確地表示出信息世界中的常用概念 表示方法很多 其中最為常用的是P P S Chen于1976年提出的實體 聯(lián)系方法 entity relationshipapproach 該方法用E R圖來描述現(xiàn)實世界的概念 E R圖提供了表示實體型 屬性和聯(lián)系的方法是 實體型 用矩形表示 矩形框內(nèi)寫明實體名 屬性 用橢圓形表示 并用無向邊將其與相應(yīng)的實體連接 聯(lián)系 用菱形表示 菱形框內(nèi)寫明聯(lián)系名 并用無向邊分別與有關(guān)實體連接起來 同時在無向邊旁標(biāo)上聯(lián)系的類型 1 1 1 n或m n 概念模型的表示方法 21 11 概念模型常用表示方法 實體 聯(lián)系法 E R圖描述 E R圖成分 實體 屬性 聯(lián)系 會畫E R圖 22 完整的E R圖有屬性實體的屬性表示 23 E R圖實例 選修與組成的屬性標(biāo)在聯(lián)系中 24 25 數(shù)據(jù)模型 在機(jī)器世界中不同的數(shù)據(jù)模型具有不同的數(shù)據(jù)結(jié)構(gòu)形式 目前最常用的數(shù)據(jù)模型有層次模型 hierarchicalmodel 網(wǎng)狀模型 networkmodel 關(guān)系模型 relationalmodel 面向?qū)ο蟮哪P?其中層次模型和網(wǎng)狀模型統(tǒng)稱為非關(guān)系模型 非關(guān)系模型的數(shù)據(jù)庫系統(tǒng)在20世紀(jì)70年代與80年代初非常流行 關(guān)系模型的數(shù)據(jù)庫系統(tǒng)80年代初到現(xiàn)在非常流行 面向?qū)ο竽P褪窃?0世紀(jì)80年代以來 面向?qū)ο蟮姆椒ê图夹g(shù)在計算機(jī)各個領(lǐng)域的應(yīng)用發(fā)展起來的 26 關(guān)系模型是目前最重要的一種模型 美國IBM公司的研究員E F codd于1970年發(fā)表題為 大型共享系統(tǒng)的關(guān)系數(shù)據(jù)庫的關(guān)系模型 的論文 文中首次提出了數(shù)據(jù)庫系統(tǒng)的關(guān)系模型 20世紀(jì)80年代以來 計算機(jī)廠商新推出的數(shù)據(jù)庫管理系統(tǒng) DBMS 幾乎都支持關(guān)系模型 數(shù)據(jù)庫領(lǐng)域當(dāng)前的研究工作都是以關(guān)系方法為基礎(chǔ) 1 關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)在用戶看來 一個關(guān)系模型的邏輯結(jié)構(gòu)是一張二維表 它由行和列組成 例如 圖l 23中的學(xué)生人事記錄就是一個關(guān)系模型 它涉及下列概念 關(guān)系數(shù)據(jù)模型 27 12 關(guān)系模型中幾個主要術(shù)語關(guān)系 元組 屬性 域 分量 碼 關(guān)系模式 關(guān)系 定義2 3D1 D2 Dn的子集叫作在域D1 D2 Dn上的關(guān)系 用R D1 D2 Dn 表示 關(guān)系是笛卡爾積的子集 所以關(guān)系也是一個二維表 元組 表的每行為一個元組 屬性 對每列起一個名字 稱為屬性 表中的一列即為一個屬性 域 domain 屬性的取值范圍 分量 元組中的一個屬性值 碼 候選碼 若關(guān)系中的某一屬性組的值能唯一地標(biāo)識一個元組 而其真子集不行 則稱該屬性組為候選碼 主碼 若一個關(guān)系有多個候選碼 則選定其中一個為主碼關(guān)系模式 對關(guān)系的描述 一般表示為 R U 關(guān)系名 屬性1 屬性2 屬性n 三元組表示法 R U F 28 29 關(guān)系模式 對關(guān)系的描述 一般表示為 關(guān)系名 屬性1 屬性2 屬性n 例如 學(xué)生 學(xué)號 姓名 性別 系別 年齡 籍貫 課程 課程號 課程名 學(xué)分 在關(guān)系模型中 實體以及實體間的聯(lián)系都是用關(guān)系來表示 例如學(xué)生與課程之間的多對多聯(lián)系 選修 在關(guān)系模型中可以表示如下 選修 學(xué)號 課程號 成績 30 關(guān)系數(shù)據(jù)模型的操縱主要包括查詢 插入 刪除和更新數(shù)據(jù) 這些操作必須滿足關(guān)系的完整性約束條件 關(guān)系的完整性約束條件包括三大類 實體完整性 參照完整性和用戶定義的完整性 其具體含義將在后面介紹 關(guān)系模型中的數(shù)據(jù)操作是集合操作 操作對象和操作結(jié)果都是關(guān)系 即若干元組的集合 而不像非關(guān)系模型中那樣是單記錄的操作方式 另一方面 關(guān)系模型把存取路徑向用戶隱蔽起來 用戶只要指出 干什么 或 找什么 不必詳細(xì)說明 怎么干 或 怎么找 從而大大地提高了數(shù)據(jù)的獨(dú)立性 提高了用戶的生產(chǎn)率 Select fromstudent 2 關(guān)系數(shù)據(jù)模型的操縱與完整性約束 31 13 集中式數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)及二級映象 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)是指數(shù)據(jù)庫系統(tǒng)是由外模式 模式和內(nèi)模式三級構(gòu)成 兩級映象功能是 外模式 模式映象 模式 內(nèi)模式映象 32 掌握關(guān)系模型 關(guān)系 關(guān)系模式 關(guān)系數(shù)據(jù)庫 關(guān)系數(shù)據(jù)庫系統(tǒng)和關(guān)系數(shù)據(jù)庫管理系統(tǒng)的概念 正確理解關(guān)系的碼 外碼理解關(guān)系的完整性內(nèi)容及規(guī)則會用關(guān)系代數(shù)表示查詢 一 基本概念 1 關(guān)系模型 由關(guān)系數(shù)據(jù)結(jié)構(gòu) 關(guān)系操作集合和完整性約束三部分組成 關(guān)系的數(shù)據(jù)結(jié)構(gòu)關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)非常單一 是一張扁平的二維表 現(xiàn)實世界的實體以及實體間的各種聯(lián)系都用關(guān)系二維表表示 關(guān)系操作特點(diǎn) 采用集合操作方式 即操作的對象和結(jié)果都是集合 完整性約束實體完整性 參照完整性和用戶定義的完整性 第二章關(guān)系數(shù)據(jù)庫 33 2 關(guān)系模式 41頁 定義2 4 關(guān)系的描述稱為關(guān)系模式 形式化表示R U D DOM F R為關(guān)系名 U為組成關(guān)系的諸屬性名 D為屬性的域 DOM表示屬性向域的映象 F是屬性間的數(shù)據(jù)依賴關(guān)系 通常簡記為R U 或記為R A1 A2 An 3 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫的型與值 42頁 關(guān)系模式是型 關(guān)系是值 關(guān)系數(shù)據(jù)庫模式與關(guān)系數(shù)據(jù)庫通常統(tǒng)稱為關(guān)系數(shù)據(jù)庫4 關(guān)系數(shù)據(jù)庫系統(tǒng) 支持關(guān)系模型的數(shù)據(jù)庫系統(tǒng) 5 關(guān)系數(shù)據(jù)庫管理系統(tǒng)簡稱為關(guān)系系統(tǒng) 34 二 關(guān)系模型三類完整性 42 實體完整性 參照完整性 用戶定義完整性實體完整性規(guī)則 參照完整性規(guī)則 主 外碼概念及用途 候選碼 若關(guān)系中的某一屬性組的值能唯一地標(biāo)識一個元組 而其真子集不行 則稱該屬性組為候選碼 candidatekey 主碼 若一個關(guān)系有多個候選碼 則選定其中一個為主碼 primarykey 主屬性 候選碼中的屬性稱主屬性 非主屬性 不包含在任何候選碼中的屬性稱為非碼屬性也稱為非主屬性 規(guī)則2 1實體完整性規(guī)則 若屬性A是基本關(guān)系R的主屬性 則屬性A不能取空值 35 外碼 定義2 5設(shè)F是基本關(guān)系R的一個或一組屬性 但不是關(guān)系R的碼 如果F與基本關(guān)系S的主碼Ks相對應(yīng) 則稱F是基本關(guān)系R的外碼 foreignkey 并稱基本關(guān)系R為參照關(guān)系 referencingrelation 基本關(guān)系S為被參照關(guān)系 referencedrelation 或目標(biāo)關(guān)系 targetrelatton 關(guān)系R和S不一定是不同的關(guān)系 規(guī)則2 2參照完整性規(guī)則 若屬性 或?qū)傩越M F是基本關(guān)系R的外碼 它與基本關(guān)系S的主碼Ks相對應(yīng) 基本關(guān)系R和S不一定是不同的關(guān)系 則對于R中每個元組在F上的值必須為 或者取空值 F的每個屬性值均為空值 或者等于S中某個元組的主碼值 36 選擇又稱為限制 restriction 它是在關(guān)系R中選擇滿足給定條件的諸元組 記作 其中F表示選擇條件 1 選擇 selection 三 關(guān)系操作1 關(guān)系模型的操作 8種 傳統(tǒng)的集合運(yùn)算4種 并 交 差 廣義笛卡爾積 專門的關(guān)系運(yùn)算4種 選擇 投影 連接 除 操作方式的特點(diǎn) 集合操作2 用關(guān)系代數(shù)表示關(guān)系運(yùn)算選擇 投影 連接 除 37 關(guān)系R上的投影是從R中選擇出若干屬性列組成新的關(guān)系 A R t A t R 其中A為R中的屬性列 投影操作是從列的角度進(jìn)行的運(yùn)算 連接 join 它是從兩個關(guān)系的笛卡爾積中選取屬性間滿足一定條件的元組 記作 2 投影 projection 自然連接 兩個關(guān)系中進(jìn)行比較的分量必須是相同的屬性組 取值相同 并且要在結(jié)果中把重復(fù)的屬性去掉 即若R和S具有相同的屬性組B 則自然連接可記作 38 例1查詢信息系 IS系 全體學(xué)生Sdept IS Student 或 5 IS Student 例2查詢學(xué)生關(guān)系student在學(xué)生姓名和所在系兩個屬性上的投影 Sname Sdept student 或 student 例3查詢至少選修了一門其直接先行課為6號課程的學(xué)生姓名 52頁 Sname Cpno 6 Course SC Student 關(guān)系代數(shù)例題 例4檢索信息系 IS系 學(xué)生的姓名 Sname Sdept IS Student SelectSnamefromstudentwhereSdept IS 39 1 SQL語言SQL的數(shù)據(jù)定義功能 SQL的數(shù)據(jù)操縱功能SQL的數(shù)據(jù)查詢功能 SQL的數(shù)據(jù)控制功能2 嵌入式SQL語句與主語言之間的通信 第三章關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言 SQL 40 SQL語言支持關(guān)系數(shù)據(jù)庫三級模式結(jié)構(gòu) 如圖3 1所示 其中外模式對應(yīng)于視圖 view 和部分基本表 basetable 模式對應(yīng)于基本表 內(nèi)模式對應(yīng)于存儲文件 SQL語言支持三級模式結(jié)構(gòu) 41 基本表是本身獨(dú)立存在的表 在SQL中一個關(guān)系對應(yīng)一個表 一些基本表對應(yīng)一個存儲文件 一個表可以帶若干索引 索引存放在存儲文件中 存儲文件的邏輯結(jié)構(gòu)組成了關(guān)系數(shù)據(jù)庫的內(nèi)模式 存儲文件的物理文件結(jié)構(gòu)是任意的 視圖是從基本表或其他視圖中導(dǎo)出的表 它本身不獨(dú)立存儲在數(shù)據(jù)庫中 數(shù)據(jù)庫中只存放視圖的定義而不存放視圖對應(yīng)的數(shù)據(jù) 這些數(shù)據(jù)仍存放在導(dǎo)出視圖的基本表中 因此視圖是一個虛表 用戶可以用SQL語言對視圖和基本表進(jìn)行查詢 在用戶眼中 視圖和基本表都是關(guān)系 而存儲文件對用戶是透明的 基本表 存儲文件與視圖 42 修改視圖和索引怎么辦 數(shù)據(jù)定義 43 CREATETABLE 表名 列名 數(shù)據(jù)類型 列級完整件約束條件 列名 數(shù)據(jù)類型 列級完整性約束條件 表級完整性約束條件 其中 表名 是基本表的名字 它由一個或多個屬性 列 組成 屬性要說明類型與長度 建表的同時還可定義與該表有關(guān)的完整性約束條件 如果完整性約束條件涉及到該表的多個屬性列 則必須定義在表級上 1 定義基本表SQL語言使用CREATETABLE語句定義基本表 其一般格式如下 44 例1建立一個 學(xué)生 表Student 它由學(xué)號sno 姓名Sname 性別Ssex 年齡Sage 所在系Sdept5個屬性組成 其中學(xué)號屬性不能為空 并且其值是唯一的 CREATETABLEStudent SnoCHAR 5 NOTNULLUNIQUE SnameCHAR 20 Ssexchar 2 Sageint SdeptCHAR 15 系統(tǒng)執(zhí)行上面的語句后 就在數(shù)據(jù)庫中建立一個新的空的 學(xué)生 表 并將有關(guān) 學(xué)生 表的定義及有關(guān)約束條件存放在數(shù)據(jù)字典中 45 2 刪除基本表 DROPTABLE 表名 例5刪除Student表DROPTABLEStudent 46 3 建立與刪除索引 通過索引可以大大加快表的查詢 在基本表上建立一個或多個索引 系統(tǒng)在存取數(shù)據(jù)時會自動選擇合適的索引作為存取路徑 用戶不必也不能選擇索引 1 建立索引建立索引使用CREATEINDEX語句 其一般格式為 CREATE UNIQUE CLUSTER INDEXON 其中 表名 指定要建索引的基本表的名字 索引可以建在該表的一列或多列上 各列名之間用逗號分隔 每個 列名 后面還可以用 次序 指定索引值的排列次序 包括ASC和DESC 47 例6為學(xué)生 課程數(shù)據(jù)庫中的Student Course SC3個表建立索引 其中Student表按學(xué)號升序建立唯一索引 course表按課程號升序建立唯一索引 sc表按學(xué)號升序和課程號降序建唯一索引 CREATEUNIQUEINDEXStusnoONStudent Sno CREATEUNIQUEINDEXCoucnoONCourse Cno CREATEUNIQUEINDEXSCnoONSC SnoASC CnoDESC 2 刪除索引刪除索引使用DROPINDEX語句 其一般格式為DROPINDEX 索引名 例7刪除Student表的Stusname索引 stusno DROPINDEXStusname DROPINDEXStusno 48 CREATEVIEW 視圖名 列名 列名 AS 子查詢 WITHCHECKOPTION 其中子查詢可以是任意復(fù)雜的SELECT語句 但通常不允許含有ORDERBY子句和DISTINCT短語 WITHCHECKOPTION表示對視圖進(jìn)行UPDATE INSERT和DELETE操作時要保證更新 插入或刪除的行滿足視圖定義中的謂詞條件 即子查詢中的條件表達(dá)式 如果CREATEVIEW語句僅指定了視圖名 省略了組成視圖的各個屬性列名 則隱含該視圖由子查詢中SELECT子句目標(biāo)列中的諸字段組成 4 建立與刪除視圖1 建立視圖 49 視圖建好后 若導(dǎo)出此視圖的基本表被刪除了 該視圖將失效 但一般不會被自動刪除 DROPVIEW 刪除視圖 50 數(shù)據(jù)操縱 51 SQL中數(shù)據(jù)更新包括插入數(shù)據(jù) 修改數(shù)據(jù)和刪除數(shù)據(jù) 3 4 1插入數(shù)據(jù) SQL的數(shù)據(jù)插入語句INSERT通常有兩種形式 1 插入單個元組 52 例1將一個新學(xué)生記錄 學(xué)號 95020 姓名 陳冬 性別 男 所在系 IS 年齡 18歲 插入Student表中 例2插入一條選課記錄 95020 1 3 4 2修改數(shù)據(jù) 修改操作又稱為更新操作 其語句的一般格式為 新插入的記錄grade列上取空值 a b 53 其功能是修改指定表中滿足WHERE子句條件的元組 其中SET子句用于指定修改方法 即用 表達(dá)式 的值取代相應(yīng)的屬性列值 如果省略WHERE子句 則表示要修改表中的所有元組 1 修改某一個元組的值例4將學(xué)生95001的年齡改為22歲 2 修改多個元組的值例5將所有學(xué)生的年齡增加1歲 UPDATE 表名 SET 列名 表達(dá)式 列名 表達(dá)式 WHERE 條件 54 DELETEFROM 表名 WHERE 條件 DELETE語句的功能是從指定表中刪除滿足WHERE子句條件的所有元組 如果省略WHERE子句 表示刪除表中全部元組 但表的定義仍在字典中 也就是說 DELETE語句刪除的是表中的數(shù)據(jù) 而不是關(guān)于表的定義 刪除某一個 或某些 元組的值例7刪除學(xué)號為95019的學(xué)生記錄 DELETEFROMStudentWHERESno 95019 3 4 3刪除數(shù)據(jù) 55 2 刪除多個元組的值 例8刪除所有學(xué)生的選課記錄 DELETEFROMSC 56 整個SELECT語句的含義是 根據(jù)WHERE子句的條件表達(dá)式 從FROM子句指定的基本表或視圖中找出滿足條件的元組 再按SELECT子句中的目標(biāo)列表達(dá)式 選出元組中的屬性值形成結(jié)果表 如果有GROUP子句 則將結(jié)果按 列名1 的值進(jìn)行分組統(tǒng)計 如果GROUP子句帶HAVING短語 則只有滿足指定條件的組才予輸出 如果有ORDER子句 則結(jié)果表還要按 列名2 的值的升序或降序排序 SELECT語句既可以完成簡單的單表查詢 也可以完成復(fù)雜的連接查詢和嵌套查詢 最基本的用法是 select列1 列2 列3 from表名 where條件 57 1 目標(biāo)列表達(dá)式有以下可選格式 數(shù)據(jù)查詢 58 其中 屬性列名表達(dá)式 可以是由屬性列 作用于屬性列的聚集函數(shù)和常量的任意算術(shù)運(yùn)算 十 一 組成的運(yùn)算公式 集函數(shù)的一般格式為 59 WHERE子句的條件表達(dá)式有以下可選格式 60 數(shù)據(jù)查詢 61 2 連接查詢 自然連接 自身連接 例34查詢每一門課的間接先修課 外連接 例33 Student表為主體列出每個學(xué)生的基本情況及其選課情況 SELECTStudent Sno Sname Ssex Sage Sdept Cno GradeFROMStudentLEFTOUTERJOINSCONStudent Sno SC Sno 62 3 嵌套查詢 where語句中可包含另個查詢塊 嵌套查詢分為不相關(guān)子查詢 in 比較運(yùn)算符 any all謂詞 和相關(guān)子查詢 exists 兩類 不相關(guān)子查詢是指子查詢的查詢條件不依賴于父查詢 它的求解方法是由里向外處理 相關(guān)子查詢是指子查詢的查詢條件依賴于外層父查詢的某個屬性值 它的求解方法是由外向里處理 IN ANY ALL 構(gòu)造的子查詢 Where數(shù)據(jù)項IN 子查詢 子查詢輸出中有相應(yīng)數(shù)據(jù)項相關(guān)子查詢 Whereexists 子查詢 子查詢的where條件中依賴于外層父查詢的某個屬性值用IN構(gòu)造的相關(guān)子查詢 Where數(shù)據(jù)項IN 子查詢 子查詢輸出中有相應(yīng)數(shù)據(jù)項且條件中依賴于外層父查詢的某個屬性值 63 選修了2號課程的學(xué)生姓名 解一 解二 解三 64 4 使用集函數(shù) GROUPBY子句可以將查詢結(jié)果表的各行按一列或多列取值相等的原則進(jìn)行分組 與集函數(shù)一起使用 即每一組都有一個函數(shù)值 例30查詢各個課程號與相應(yīng)的選課人數(shù) SELECTCno COUNT Sno FROMSCGROUPBYCno 查詢平均分 80分的課程號 SelectcnofromscgroupbycnoHavingavg grade 80 5 對查詢結(jié)果分組 SELECTCOUNT FROMStudent 65 6 匹配符檢索 7 空值檢索 謂詞ISNULL和ISNOTNULL可用來查詢空值和非空值 SELECTSno CnoFROMSCWHEREGradeISNUIL 8 對查詢結(jié)果排序 ORDERBY子句指定按照一個或多個屬性列的為升序 ASC 或降序 DESC 重新排列查詢結(jié)果 其中升序ASC為缺省值 SELECT FROMStudentORDERBYSdept SageDESC 66 六 數(shù)據(jù)控制語言 GRANT語句的一般格式為 GRANT 權(quán)限 權(quán)限 ON 對象類型 對象名 TO 用戶 用戶 WITHGRANTOPTION REVOKE 權(quán)限 權(quán)限 ON 對象類型 對象名 FROM 用戶 用戶 67 2嵌入式SQL語句與主語言之間的通信數(shù)據(jù)庫工作單元與源程序工作單元之間通信主要包括 向主語言傳遞SQL語句的執(zhí)行狀態(tài)信息 使主語言能夠據(jù)此控制程序流程 通過SQL通訊區(qū) SQLCA 解決 主語言向SQL語句提供參數(shù) 通過主變量解決 將SQL語句查詢數(shù)據(jù)庫的結(jié)果交主語言進(jìn)一步處理 通過主變量和游標(biāo) CURSOR 實現(xiàn) 數(shù)據(jù)控制

注意事項

本文(《數(shù)據(jù)庫原理》ppt.ppt)為本站會員(jun****875)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!