數據庫原理及應用(MySQL版)
-
【作 者】瞿英 裴祥喜 王玉恒
【I S B N 】978-7-5170-9244-5
【責任編輯】王玉梅
【適用讀者群】本專通用
【出版時間】2021-02-04
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】296
【千字數】457
【印 張】18.5
【定 價】¥54
【叢 書】普通高等教育數據科學與大數據技術專業教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
隨著信息技術的深入發展和信息系統的廣泛應用,各類人員對數據庫理論與技術的需求在不斷增加。“數據庫原理及應用”不僅是計算機科學與技術專業的必修課,也是信息、經管、自動化等專業的必修課。本書既詳細介紹了MySQL數據庫管理系統中數據庫基本操作、表的維護、數據查詢、索引與視圖、SQL編程、完整性、安全性、并發控制及備份與恢復等各種操作,也深入闡述了關系數據庫的基本原理(關系數據模型、關系完整性及關系代數)、關系規范理論及數據庫設計等核心理論方法,實現了理論與實踐的結合。本書體系完整、結構安排合理、內容翔實、例題豐富、可操作性強,并配有重點、難點內容的微視頻講解。
本書適合作為高等院校本科、專科計算機及相關專業數據庫原理、數據庫應用及其系統開發課程的教材,也可作為從事數據庫管理與開發的信息技術領域的科技工作者的參考書。
內容實用——理論與實踐結合,重點突出應用
體系完善——構建完整的大數據專業解決方案
產教融合——高校企業共參與,對標行業標準
資源豐富——微課、課件、教案、源碼、答案
本書是編者在總結了二十余年數據庫教學和系統開發實踐經驗的基礎上編寫而成的,具有較強的教學實踐性和實用性。本書采用MySQL數據庫管理系統作為數據庫操作的平臺。MySQL數據庫以其精巧靈活、運行速度快、經濟適用性強、開放源碼等優勢,獲得許多中小型網站開發公司的青睞。MySQL性能卓越,搭配PHP和Apache可組成良好的軟件開發環境,并且已經大量部署到中小型企業和高校的教學平臺。
本書在原理中融入應用,在應用中體現原理,知識點覆蓋數據庫原理與應用的核心內容,既包括數據庫操作的原理,又涵蓋數據庫管理系統的應用實踐。本書內容可分為兩大部分:一是基于MySQL數據庫管理系統的數據基本操作,包括數據庫基本操作、表的維護、數據查詢、索引與視圖操作、SQL編程、完整性操作、安全性操作、并發控制及備份與恢復等核心操作,以及Workbench工具可視化操作,其中主要操作單元配有84個微課視頻;二是數據庫系統原理的相關知識點,涵蓋關系數據模型、安全性機制、完整性機制、規范化理論、數據庫設計等。
為更好地闡釋原理及應用的知識點,本書設計了全新的案例—校園圖書管理數據庫,并將案例貫穿始終;各章均通過示例和習題來幫助讀者鞏固所學知識。本書通過可視化的實踐操作,以“圖書借閱”這一廣大師生熟悉和關心的功能需求入手,寓原理于案例,實現復雜數據庫的設計、建立、查詢及編程。
本書具有如下特色:
(1)結構合理,重點協調3個關系:原理與應用內容的比例、原理與應用講解的順序、基礎內容與難點內容的比例。
(2)深入淺出:兼顧理論與實踐,讓讀者知其然(如何使用工具操作數據),并知其所以然(操作中蘊含的原理),而不是簡單地使用數據庫工具。
(3)體系完備:以基礎知識為主,涵蓋新技術的應用,形成完備的知識體系。
(4)簡明易讀:案例簡單易懂,大量截圖體現操作過程,且每章都配有重點、難點的微視頻講解。
本書適合作為高等院校本科、專科計算機及相關專業數據庫原理、數據庫應用及其系統開發課程的教材,也可作為從事數據庫管理與開發的信息技術領域的科技工作者的參考書。
本書由瞿英、裴祥喜、王玉恒任主編,賈冬青、劉紫玉、張娜萍、陳軍霞、張金芳、劉濤任副主編。本書第1、6、11章,8.1節由張娜萍編寫;第2、13章由劉濤老師編寫;第3、4章由裴祥喜、賈冬青和張金芳等編寫;第5、7章,8.2節由陳軍霞、王玉恒編寫;第9章由瞿英編寫;第10、12、15章由劉紫玉編寫;第14章由王玉恒、種子鵬編寫;最后由瞿英、王玉恒統稿。此外,研究生劉增在資料查閱、書稿核對等方面做了大量的工作;本書在編寫過程中還參閱了大量數據庫方面的文獻資料,在此對相關作者一并表示感謝。
鑒于編者水平有限,書中難免會存在遺漏和錯誤,敬請各位讀者及專家指正。編者郵箱:732887983@qq.com。
編 者
2020年8月
1.1 數據管理技術的發展歷程 1
1.1.1 人工管理階段 2
1.1.2 文件管理階段 2
1.1.3 數據庫系統管理階段 3
1.2 數據庫的4個基本概念 4
1.2.1 數據 4
1.2.2 數據庫 5
1.2.3 數據庫管理系統 5
1.2.4 數據庫系統 6
1.3 數據模型 11
1.3.1 數據模型的組成要素 12
1.3.2 概念模型 13
1.3.3 常用的數據模型 13
1.4 關系數據庫 15
1.4.1 關系模型數據結構 15
1.4.2 關系操作 18
1.4.3 關系完整性 25
本章小結 26
練習1 27
第2章 MySQL 29
2.1 MySQL簡介 29
2.1.1 MySQL的基礎特性 30
2.1.2 MySQL主要分支 30
2.2 MySQL的下載與安裝 31
2.3 MySQL服務的啟動和關閉 40
2.3.1 在命令行中操作MySQL 40
2.3.2 Windows圖形化管理MySQL服務 40
2.4 Linux環境下MySQL的安裝與啟動 41
2.5 Workbench管理工具 41
本章小結 43
練習2 44
第3章 數據庫的管理 45
3.1 MySQL文件存儲結構體系 45
3.2 MySQL數據目錄體系結構 46
3.3 MySQL日志文件簡介 47
3.4 創建數據庫 49
3.5 查詢數據庫 50
3.6 修改數據庫 52
3.7 刪除數據庫 53
本章小結 53
練習3 54
第4章 數據表的管理 55
4.1 數據類型 55
4.2 創建表 57
4.3 查詢表 59
4.4 修改表 60
4.5 刪除表 64
4.6 表中數據的管理 64
4.6.1 插入數據 64
4.6.2 修改數據 66
4.6.3 刪除數據 67
本章小結 69
練習4 70
第5章 數據查詢 71
5.1 基本查詢 71
5.1.1 基本的SELECT語句 71
5.1.2 條件查詢 74
5.1.3 對查詢結果進行排序和篩選 79
5.2 分組統計查詢 82
5.2.1 查詢中的聚合函數 82
5.2.2 分組查詢 84
5.2.3 UNION合并查詢 85
5.3 連接查詢 86
5.3.1 內連接 87
5.3.2 外連接 88
5.3.3 交叉連接 90
5.4 嵌套查詢 90
5.4.1 嵌套查詢的概念 90
5.4.2 帶有IN謂詞的子查詢 91
5.4.3 帶有比較運算符的子查詢 92
5.4.4 帶有ANY或ALL謂詞的子查詢 93
5.4.5 帶有EXISTS謂詞的子查詢 94
本章小結 94
練習5 95
第6章 索引 96
6.1 索引概述 96
6.1.1 索引的概念和特點 96
6.1.2 索引的分類 97
6.1.3 索引的設計原則 97
6.2 創建索引 98
6.2.1 使用SQL語句創建索引 98
6.2.2 使用圖形工具創建索引 100
6.3 查詢索引 101
6.3.1 使用SQL語句查詢索引 101
6.3.2 使用圖形工具查詢索引 102
6.4 刪除索引 103
6.4.1 使用SQL語句刪除索引 103
6.4.2 使用圖形工具刪除索引 105
本章小結 105
練習6 106
第7章 視圖 108
7.1 視圖的基本概念 108
7.2 視圖的操作 109
7.2.1 創建視圖 109
7.2.2 修改視圖 110
7.2.3 查詢視圖 110
7.2.4 刪除視圖 111
7.3 視圖的應用 111
7.3.1 通過視圖插入數據 111
7.3.2 通過視圖修改數據 113
7.3.3 通過視圖刪除數據 114
本章小結 114
練習7 115
第8章 數據完整性 116
8.1 數據完整性控制原理 116
8.1.1 完整性約束條件 116
8.1.2 完整性控制機制 118
8.1.3 關系數據庫中完整性的實現 119
8.2 在MySQL中使用各類約束實施數據完整性 120
8.2.1 主鍵約束 121
8.2.2 唯一約束 122
8.2.3 外鍵約束 124
8.2.4 非空約束 127
8.2.5 默認值約束 128
8.2.6 檢查約束 130
8.2.7 各類約束的綜合應用 131
本章小結 132
練習8 134
第9章 關系數據理論 135
9.1 問題的提出 135
9.2 函數依賴理論 138
9.2.1 函數依賴 138
9.2.2 函數依賴相關概念 139
9.2.3 Armstrong公理系統 141
9.2.4 最小函數依賴集 142
9.2.5 碼的求解 143
9.3 規范化理論 144
9.3.1 范式 144
9.3.2 1NF 144
9.3.3 2NF 145
9.3.4 3NF 146
9.3.5 BCNF 147
9.3.6 多值依賴及4NF 148
9.3.7 規范化小結 150
9.4 模式分解 150
9.4.1 模式分解的概念 150
9.4.2 分解保持無損連接和函數依賴的判定 153
9.4.3 模式分解的算法 155
本章小結 157
練習9 158
第10章 數據庫設計 160
10.1 數據庫設計概述 160
10.1.1 數據庫設計的基本任務和目標 160
10.1.2 數據庫設計的特點和方法 161
10.1.3 數據庫設計的基本步驟 163
10.1.4 數據庫設計過程中的各級模式 164
10.2 需求分析 165
10.2.1 需求分析的任務 165
10.2.2 需求分析的方法 166
10.2.3 需求分析的步驟 167
10.2.4 需求分析案例 168
10.3 概念模型 172
10.3.1 概念模型的特點 172
10.3.2 E-R模型 172
10.3.3 概念模型的設計方法 175
10.3.4 概念模型的設計步驟 177
10.3.5 概念模型設計案例 177
10.4 邏輯模型 180
10.4.1 邏輯模型設計的步驟 181
10.4.2 概念模型轉換為關系模型的方法 182
10.4.3 邏輯模型設計案例 183
10.5 物理模型 184
10.5.1 影響物理模型設計的因素 184
10.5.2 物理模型設計的內容和方法 185
10.5.3 關系模式存取方式的選擇 185
10.5.4 物理模型的評價 187
10.5.5 物理模型設計案例 187
10.6 數據庫的實施 189
10.7 數據庫的運行和維護 190
本章小結 191
練習10 192
第11章 數據庫編程基礎 194
11.1 常量 194
11.2 變量 197
11.2.1 系統變量 197
11.2.2 用戶自定義變量 200
11.3 運算符和表達式 203
11.3.1 算術運算符與表達式 203
11.3.2 比較運算符與表達式 203
11.3.3 邏輯運算符與表達式 206
11.3.4 位運算符與表達式 207
11.3.5 運算符的優先級 209
11.4 流程控制語句 210
11.4.1 順序結構 210
11.4.2 選擇結構 212
11.4.3 循環結構 215
11.5 游標 218
11.5.1 使用游標 218
11.5.2 游標的應用 219
本章小結 220
練習11 221
第12章 高級數據庫編程 223
12.1 函數 223
12.1.1 系統函數 223
12.1.2 自定義函數 229
12.2 存儲過程 236
12.2.1 存儲過程的創建 236
12.2.2 存儲過程的調用 238
12.2.3 存儲過程的修改 239
12.2.4 存儲過程的刪除 241
12.2.5 綜合實例 241
12.3 觸發器 243
12.3.1 觸發器概述 243
12.3.2 創建觸發器 243
12.3.3 修改觸發器 245
12.3.4 使用觸發器 246
12.3.5 刪除觸發器 248
12.3.6 綜合實例 248
本章小結 250
練習12 251
第13章 MySQL的安全管理 253
13.1 數據庫的安全性 253
13.1.1 數據庫安全 253
13.1.2 數據庫管理系統 253
13.2 MySQL權限系統 255
13.2.1 MySQL權限系統的工作原理 255
13.2.2 權限表的結構 255
13.3 賬號管理操作 258
13.3.1 創建賬號 258
13.3.2 指定和更改權限 260
13.3.3 回收權限 261
13.3.4 修改用戶密碼 261
13.3.5 刪除賬號 262
13.4 MySQL安全問題 262
本章小結 263
練習13 263
第14章 備份與恢復 264
14.1 數據庫備份與恢復 264
14.2 MySQL數據庫備份與恢復的方法 265
14.2.1 使用SQL 語句備份和恢復數據 265
14.2.2 使用MySQL 客戶端實用程序備份和
恢復數據 270
14.2.3 使用MySQL圖形界面工具備份和
恢復數據 272
14.2.4 直接復制 274
14.3 二進制日志文件的使用 275
14.3.1 開啟日志文件 275
14.3.2 使用mysqlbinlog工具處理日志 276
本章小結 278
練習14 278
第15章 并發控制 280
15.1 并發控制概述 280
15.1.1 事務的基本概念 281
15.1.2 并發控制與數據的不一致性 282
15.2 封鎖和封鎖協議 284
15.2.1 封鎖的概念及其類型 284
15.2.2 封鎖粒度 285
15.2.3 封鎖協議 285
15.3 活鎖和死鎖 285
15.3.1 活鎖 286
15.3.2 死鎖 286
本章小結 288
練習15 289
參考文獻 290
- 輸水管線工程風險管理 [張勇 黨亥生 著]
- 民用航空飛機標準線路施工 [主編 王志敏 陳明]
- 不息的水脈—大運河講談錄 [趙珩 著]
- 實用運籌學 [主編 邢育紅 于晉臣]
- 三峽梯級電站水資源決策支持系統研究與開發 [姚華明 潘紅忠 湯正]
- 海南黎族民俗文化鑒賞 [龐國華 著]
- 石墨烯在太赫茲及中紅外頻段電磁器件設計中的應用 [李艷秀 莊華偉 著]
- 電子技術(第二版) [主編 覃愛娜 李飛]
- 辦公自動化高級應用 [陳萍 朱曉玉]
- 信息處理技術員考試32小時通關 [薛大龍]
- 電子產品設計案例教程(微課版)—基于嘉立創EDA(專業版) [王靜 莫志宏 陳學昌 丁紅]
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- Web技術開發教程(基于.NET開源MVC框架) [王合闖 韓紅玲 王青正 陳海蕊]
- 商務英語翻譯教程(筆譯)(第四版) [主編 王軍平]
- 智慧零售技術與應用 [洪旭 著]
- 建設工程法規實務 [主編 余瀅]
- 商務秘書理論與實務(第三版) [主編 張同欽]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 勞動爭議處理實務 [主編 王秀卿 羅靜]
- 工程數學 [主編 郭立娟 王海]
- 語音識別理論與實踐 [主編 莫宏偉]
- 信息系統項目管理師章節習題與考點特訓(第二版) [主編 薛大龍]
- 武術基礎教程 [主編 李代勇 謝志民]
- 計算機網絡實訓教程 [主編 張浩軍 趙玉娟]
- 畫法幾何與機械制圖習題集(多學時) [主編 趙軍]
- HCIA-Datacom認證題庫分類精講 [主 編 韓立剛]
- SwiftUI完全開發 [李智威 著]
- 網絡規劃設計師備考一本通 [夏杰 編著]