《數(shù)據(jù)庫原理及應(yīng)用/高等學(xué)校計(jì)算機(jī)應(yīng)用規(guī)劃教材》全面介紹了數(shù)據(jù)庫系統(tǒng)基本原理以及數(shù)據(jù)庫管理系統(tǒng)應(yīng)用技術(shù)。全書共8章,主要內(nèi)容包括數(shù)據(jù)庫系統(tǒng)概述、關(guān)系數(shù)據(jù)庫系統(tǒng)理論基礎(chǔ)、關(guān)系代數(shù)和關(guān)系的規(guī)范化理論、SQLServer2012概述與安裝、數(shù)據(jù)庫的創(chuàng)建與管理、數(shù)據(jù)表的創(chuàng)建與管理、視圖、索引以及備份與恢復(fù)等內(nèi)容。本書主要是為了滿足高等院校培養(yǎng)應(yīng)用技術(shù)型人才的需要而編寫的,具有較強(qiáng)的實(shí)用性。
《數(shù)據(jù)庫原理及應(yīng)用/高等學(xué)校計(jì)算機(jī)應(yīng)用規(guī)劃教材》內(nèi)容循序漸進(jìn)、深入淺出、概念清晰、結(jié)構(gòu)合理,將數(shù)據(jù)庫基本原理與應(yīng)用實(shí)踐相結(jié)合并配有適量的例題和習(xí)題,幫助讀者從不同角度理解和掌握所學(xué)的知識,構(gòu)建完整的知識體系。
《數(shù)據(jù)庫原理及應(yīng)用/高等學(xué)校計(jì)算機(jī)應(yīng)用規(guī)劃教材》可作為高等院校計(jì)算機(jī)專業(yè)或數(shù)學(xué)、通信、電子類等相關(guān)專業(yè)的本科生或高職高專院校專科生的教材,也可作為計(jì)算機(jī)愛好者的自學(xué)用書。
《數(shù)據(jù)庫原理及應(yīng)用/高等學(xué)校計(jì)算機(jī)應(yīng)用規(guī)劃教材》對應(yīng)的電子教案和習(xí)題答案可以到網(wǎng)站下載。
數(shù)據(jù)庫是現(xiàn)代化數(shù)據(jù)管理的最重要、最廣泛、最先進(jìn)的技術(shù),是計(jì)算機(jī)科學(xué)的重要分支。《數(shù)據(jù)庫原理及應(yīng)用》為計(jì)算機(jī)及相關(guān)的眾多學(xué)科提供了利用計(jì)算機(jī)技術(shù)進(jìn)行數(shù)據(jù)管理的基本理論知識,是計(jì)算機(jī)科學(xué)與技術(shù)、軟件工程及其相關(guān)專業(yè)學(xué)科的專業(yè)必修課。
本教材主要介紹數(shù)據(jù)庫的基本理論和數(shù)據(jù)庫管理系統(tǒng)的基本應(yīng)用技術(shù)。全書共8章。第1章數(shù)據(jù)庫概述,主要介紹數(shù)據(jù)庫的產(chǎn)生與發(fā)展,包括數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)的基本概念,數(shù)據(jù)模型與數(shù)據(jù)庫體系結(jié)構(gòu)等內(nèi)容。第2章關(guān)系數(shù)據(jù)庫系統(tǒng)模型,主要介紹關(guān)系數(shù)據(jù)模型、關(guān)系模型的完整性規(guī)則、關(guān)系代數(shù)的基本運(yùn)算等。第3章結(jié)構(gòu)化查詢語言SQL,主要介紹標(biāo)準(zhǔn)SQL概述,SQL的數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)更新等。第4章關(guān)系數(shù)據(jù)庫的設(shè)計(jì)理論,主要介紹實(shí)體類型的屬性關(guān)系、數(shù)據(jù)的函數(shù)依賴、關(guān)系數(shù)據(jù)庫模式的規(guī)范化理論、關(guān)系模式的分解算法等。第5章數(shù)據(jù)庫設(shè)計(jì),包括數(shù)據(jù)庫設(shè)計(jì)概述、需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫的實(shí)施和維護(hù)。第6章給出了一個(gè)數(shù)據(jù)庫設(shè)計(jì)的實(shí)例。第7章數(shù)據(jù)庫的安全與維護(hù),主要介紹數(shù)據(jù)庫的安全性、完整性、并發(fā)控制、備份與恢復(fù)等。第8章介紹SQL Server 2012數(shù)據(jù)庫管理系統(tǒng)的基本操作。
本書可以作為各高等學(xué)校計(jì)算機(jī)及相關(guān)專業(yè)“數(shù)據(jù)庫原理及應(yīng)用”課程的教材,也可作為廣大計(jì)算機(jī)愛好者的自學(xué)用書。
全書每章后面均配有適量的習(xí)題,以加強(qiáng)讀者對本章所學(xué)知識的理解和掌握。本書對應(yīng)的電子教案和習(xí)題答案可以到http://www.tupwk.com.cn網(wǎng)站下載。
本書由黑龍江工程學(xué)院倪春迪編寫第1、2、3、7章;東北林業(yè)大學(xué)殷曉偉編寫第5、8章;劉國成編寫第4章;曲麗娜編寫第6章。此外,參加本書編寫的人員還有孫琪、張玉琪、宋仁濤、何東昌、魯月新、范博文、黃修堯、李罰、吳興、宋澤輝、金敬杰、張雪峰、錢程、李飛龍、程淇、張可心。全書由劉國成統(tǒng)稿。
本書的出版得到了清華大學(xué)出版社相關(guān)同志的熱情關(guān)心和大力支持。許多老師和讀者也對本書的編寫提出了許多寶貴建議和修改意見,我們對此一并表示由衷的感謝。由于時(shí)間倉促,加之編者水平有限,書中錯(cuò)誤和不當(dāng)之處難免,懇請讀者批評指正。我們的電話是010-62796045,信箱是huchenhao@263.net。
編 者
2015年3月
第1章數(shù)據(jù)庫系統(tǒng)概論
1.1數(shù)據(jù)管理技術(shù)的發(fā)展
1.1.1人工管理階段
1.1.2文件管理階段
1.1.3數(shù)據(jù)庫系統(tǒng)階段
1.2數(shù)據(jù)描述
1.2.1數(shù)據(jù)描述的3個(gè)領(lǐng)域
1.2.2數(shù)據(jù)聯(lián)系的描述
1.3數(shù)據(jù)模型
1.3.1數(shù)據(jù)模型的概念
1.3.2實(shí)體聯(lián)系模型
1.3.3結(jié)構(gòu)數(shù)據(jù)模型
1.4數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)
1.4.1內(nèi)模式
1.4.2模式
1.4.3外模式
1.4.4數(shù)據(jù)獨(dú)立性
1.4.5映射
1.5數(shù)據(jù)庫管理系統(tǒng)
1.5.1數(shù)據(jù)庫管理系統(tǒng)的主要功能
1.5.2數(shù)據(jù)庫管理系統(tǒng)的組成
1.6數(shù)據(jù)庫系統(tǒng)
1.7小結(jié)
1.8習(xí)題
第2章關(guān)系數(shù)據(jù)庫
2.1關(guān)系數(shù)據(jù)模型
2.1.1關(guān)系的數(shù)學(xué)定義
2.1.2關(guān)系模式及關(guān)系實(shí)例
2.1.3關(guān)系中的基本術(shù)語
2.1.4關(guān)系的性質(zhì)
2.1.5關(guān)系模型的完整性規(guī)則
2.2關(guān)系代數(shù)
2.2.1關(guān)系操作
2.2.2傳統(tǒng)的集合運(yùn)算
2.2.3專門的關(guān)系運(yùn)算
2.2.4關(guān)系代數(shù)小結(jié)
2.2.5關(guān)系代數(shù)操作舉例
2.3小結(jié)
2.4習(xí)題
第3章關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL
3.1SQL概述
3.2SQL語法
3.3CREATETABLE語句
3.4INSERT語句
3.5SELECT語句
3.5.1默認(rèn)查詢
3.5.2查詢指定的字段
3.5.3按條件查詢
3.5.4排序
3.5.5多表連接查詢
3.5.6子查詢
3.5.7GROUPBY語句
3.6UPDATE語句
3.7DELETE語句
3.8DROPTABLE語句
3.9SQL查詢綜合應(yīng)用
3.10小結(jié)
3.11習(xí)題
第4章關(guān)系數(shù)據(jù)庫規(guī)范化理論
4.1為什么要規(guī)范化
4.1.1問題的提出
4.1.2解決方法
4.1.3關(guān)系模式規(guī)范化理論概述
4.2函數(shù)依賴
4.2.1函數(shù)依賴的定義
4.2.2Armstrong公理系統(tǒng)
4.2.3函數(shù)依賴的分類
4.2.4屬性間聯(lián)系類型與函數(shù)依賴
4.2.5屬性集閉包
4.2.6最小函數(shù)依賴集及其算法
4.2.7函數(shù)依賴與候選關(guān)鍵字
4.3關(guān)系模式的規(guī)范化
4.3.1概述
4.3.2關(guān)系模式的級別
4.3.3關(guān)系模式分解
4.4小結(jié)
4.5習(xí)題
第5章數(shù)據(jù)庫設(shè)計(jì)
5.1數(shù)據(jù)庫設(shè)計(jì)概述
5.1.1數(shù)據(jù)庫設(shè)計(jì)的任務(wù)、內(nèi)容和特點(diǎn)
5.1.2數(shù)據(jù)庫設(shè)計(jì)的基本方法
5.1.3數(shù)據(jù)庫設(shè)計(jì)的步驟
5.2需求分析
5.2.1需求分析的任務(wù)
5.2.2需求分析的方法
5.2.3數(shù)據(jù)字典
5.2.4數(shù)據(jù)流圖
5.3概念結(jié)構(gòu)設(shè)計(jì)
5.3.1E-R模型基本概念
5.3.2E-R模型圖的繪制
5.3.3概念結(jié)構(gòu)設(shè)計(jì)的方法和步驟
5.3.4數(shù)據(jù)抽象和局部E-R模型設(shè)計(jì)
5.3.5全局E-R模型設(shè)計(jì)
5.4邏輯結(jié)構(gòu)設(shè)計(jì)
5.4.1邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)和步驟
5.4.2E-R模型向關(guān)系模型的轉(zhuǎn)換
5.4.3關(guān)系模型的優(yōu)化
5.4.4設(shè)計(jì)用戶子模式
5.5物理結(jié)構(gòu)設(shè)計(jì)
5.5.1確定數(shù)據(jù)庫的物理結(jié)構(gòu)
5.5.2評價(jià)物理結(jié)構(gòu)
5.6數(shù)據(jù)庫的實(shí)施和維護(hù)
5.6.1數(shù)據(jù)的載入
5.6.2數(shù)據(jù)庫試運(yùn)行
5.6.3數(shù)據(jù)庫的運(yùn)行與維護(hù)
5.7小結(jié)
5.8習(xí)題
第6章數(shù)據(jù)庫設(shè)計(jì)案例
6.1需求分析
6.1.1功能需求分析
6.1.2數(shù)據(jù)流圖
6.1.3數(shù)據(jù)字典
6.2概念結(jié)構(gòu)設(shè)計(jì)
6.2.1實(shí)體
6.2.2實(shí)體之間的聯(lián)系
6.2.3局部E-R圖
6.2.4全局E-R圖
6.3邏輯結(jié)構(gòu)設(shè)計(jì)
6.3.1E-R圖到關(guān)系模式的轉(zhuǎn)換
6.3.2關(guān)系模式的優(yōu)化
6.3.3表結(jié)構(gòu)設(shè)計(jì)
6.4物理結(jié)構(gòu)設(shè)計(jì)
6.4.1確定存儲介質(zhì)
6.4.2創(chuàng)建數(shù)據(jù)庫
6.4.3建立表
6.4.4設(shè)計(jì)索引
6.4.5數(shù)據(jù)庫服務(wù)器性能優(yōu)化
6.6小結(jié)
6.7習(xí)題
第7章數(shù)據(jù)庫安全與維護(hù)
7.1數(shù)據(jù)庫的安全性控制
7.1.1數(shù)據(jù)庫系統(tǒng)安全主要風(fēng)險(xiǎn)
7.1.2安全性控制
7.2數(shù)據(jù)庫系統(tǒng)的完整性
7.2.1完整性約束條件
7.2.2完整性控制
7.3并發(fā)控制
7.3.1事務(wù)
7.3.2并發(fā)操作引起的問題
7.3.3封鎖
7.4數(shù)據(jù)庫備份
7.4.1基本概念
7.4.2數(shù)據(jù)備份系統(tǒng)的分類
7.4.3數(shù)據(jù)備份系統(tǒng)的工作原理
7.4.4數(shù)據(jù)備份系統(tǒng)的主流備份技術(shù)
7.5數(shù)據(jù)庫恢復(fù)技術(shù)
7.5.1數(shù)據(jù)庫恢復(fù)概述
7.5.2恢復(fù)的基本原理
7.5.3故障恢復(fù)的方法
7.6Oracle備份與恢復(fù)的基本策略
7.7備份與恢復(fù)系統(tǒng)總體設(shè)計(jì)
7.8小結(jié)
7.9習(xí)題
第8章SQLServer2012數(shù)據(jù)庫
8.1SQLServer2012簡介
8.1.1SQLServer2012的新功能與優(yōu)勢
8.1.2SQLServer2012的組成
8.1.3SQLServer2012的版本
8.2安裝SQLServer
8.2.1SQLServer2012Express簡介
8.2.2下載SQLServer2012Express
8.2.3安裝SQLServer2012Express
8.3SQLServer管理工具
8.3.1SQLServer配置管理器
8.3.2SQLServerManagementStudio
8.4創(chuàng)建和修改數(shù)據(jù)庫
8.4.1SQLServer數(shù)據(jù)庫概述
8.4.2創(chuàng)建數(shù)據(jù)庫
8.4.3修改數(shù)據(jù)庫
8.4.4刪除數(shù)據(jù)庫
8.5數(shù)據(jù)表的操作
8.5.1表的概念
8.5.2數(shù)據(jù)類型
8.5.3表結(jié)構(gòu)的創(chuàng)建、修改
8.5.4表數(shù)據(jù)的操作
8.5.5刪除表
8.5.6創(chuàng)建約束
8.5.7索引
8.5.8視圖
8.6數(shù)據(jù)庫的備份與恢復(fù)
8.7小結(jié)
8.8習(xí)題
參考文獻(xiàn)
(2)數(shù)據(jù)的獨(dú)立性不足
文件系統(tǒng)中的數(shù)據(jù)雖然有了一定的獨(dú)立性,但是由于數(shù)據(jù)文件只存儲數(shù)據(jù),由應(yīng)用程序來確定數(shù)據(jù)的邏輯結(jié)構(gòu),設(shè)計(jì)數(shù)據(jù)的物理結(jié)構(gòu),一旦數(shù)據(jù)的邏輯結(jié)構(gòu)或物理結(jié)構(gòu)需要改變,則必須修改應(yīng)用程序;或者由于語言環(huán)境的改變需要修改應(yīng)用程序時(shí),也將引起文件數(shù)據(jù)結(jié)構(gòu)的改變。因此,數(shù)據(jù)與應(yīng)用程序之間的邏輯獨(dú)立性不強(qiáng)。另外,要想對現(xiàn)有的數(shù)據(jù)再增加一些新的應(yīng)用會很困難,系統(tǒng)不容易擴(kuò)充。
(3)并發(fā)訪問容易產(chǎn)生異常
文件系統(tǒng)缺少對并發(fā)操作進(jìn)行控制的機(jī)制,雖然系統(tǒng)允許多個(gè)用戶同時(shí)訪問數(shù)據(jù),但是由于并發(fā)的更新操作相互影響,容易導(dǎo)致數(shù)據(jù)的不一致。
(4)數(shù)據(jù)的安全控制難以實(shí)現(xiàn)
數(shù)據(jù)不是集中管理。在數(shù)據(jù)的結(jié)構(gòu)、編碼、表示格式、命名以及輸出格式等方面不容易做到規(guī)范化、標(biāo)準(zhǔn)化,所以其安全性、完整性得不到可靠保證,而且文件系統(tǒng)難以實(shí)現(xiàn)對不同用戶的不同訪問權(quán)限的安全性約束。1.1.3數(shù)據(jù)庫系統(tǒng)階段