數據庫原理及應用——基於GaussDB的實現方法
李雁翎
相關主題
商品描述
在大數據時代,“數據”是一種寶貴的資源,甚至可以說是戰略性資源,它蘊含著無盡的能量,展示出超然的魅力。隨著大數據時代的到來,數據庫技術在研究、管理和應用數據領域成為備受矚目的核心技術。在這種背景下,數據庫技術已成為人們需要學習和掌握的一種基本知識和本領。 本書以華為公司自主研發的GaussDB(for MySQL)數據庫管理系統為背景,全面講述了數據庫原理和技術,以及基於GaussDB(for MySQL)進行數據庫應用系統開發的基本技能和方法。 本書以培養計算思維能力為目標,由“基礎理論篇”“技術篇”“系統應用篇”三篇組成,以數據庫應用系統案例為主線貫穿全書,講述了數據庫基礎理論、數據庫操作和管理的基本技能以及數據庫應用系統開發的一般方法。 特別地,它以目前國產新型雲數據庫為背景,這在國內極為少見,對於增強科技自信、民族自信,促進國產數據庫軟件的發展和應用普及具有重要意義。 本書配套資源全面、豐富,未來還將配套適合GaussDB(for MySQL)平臺的實驗指導書,可作為數據庫技術學習者的教學用書,也可作為培養“小型應用系統開發能力”的學慣用書,以及作為廣大電腦用戶和電腦學習者的培訓用書及自學用書。
作者簡介
李雁翎 東北師範大學信息科學與技術學院教授、博士生導師,東北師範大學圖書物聯網研究所所長。
原教育部普通高等學校大學計算機教學指導委員會委員,中國計算機學會教育專委會委員,全國高等院校計算機基礎教學研究會青少年編程教育專業委員會主任委員,國軟研究院專家組成員。
國家精品課主持人,國家精品資源共享課主持人,國家精品在線課程主持人,先後主持和參加了多項國家與省科研課題,發表數十篇學術論文,出版了數十部“數據庫與程序設計”課程相關教材,發行總量超過二百萬冊。
曾獲多項教育部科學技術進步二等獎、教育部全國優秀教材二等獎、省級優秀教學成果獎。
目錄大綱
上篇基礎理論
第1章走進GaussDB
1.1與數據庫相關的基本概念
1.1.1信息
1.1.2數據
1.1.3數據庫
1.1.4數據庫管理系統
1.1.5數據庫系統
1.1.6分佈式數據庫系統
1.2數據庫應用系統的組成
1.2.1數據庫應用系統組織架構
1.2.2數據庫系統結構
1.2.3DBMS管理與控制
1.3GaussDB(forMySQL)概述
1.3.1GaussDB(forMySQL)的特點
1.3.2GaussDB(forMySQL)系統架構
1.3.3GaussDB(forMySQL)獨特之處
1.3.4GaussDB(forMySQL)集成環境
1.3.5GaussDB家族其他數據庫產品
知識點樹
思考題
第2章關係數據庫
2.1數據描述
2.2概念模型
2.2.1概念模型相關術語
2.2.2實體-聯繫類型
2.2.3實體-聯繫圖
2.3關係模型
2.3.1關係模型相關術語
2.3.2關係的操作
2.3.3關係的完整性
2.3.4關係數據庫的特性
2.4關係規範化
2.4.1冗餘與異常
2.4.2函數依賴
2.4.3規範化原則
2.4.4模式分解
2.5關係代數
2.5.1並運算
2.5.2差運算
2.5.3交運算
2.5.4笛卡兒積運算
2.5.5投影運算
2.5.6選擇運算
2.5.7連接運算
2.5.8除運算
知識點樹
思考題
第3章數據庫設計和建模
3.1數據庫生命週期
3.2需求分析
3.2.1需求分析階段的目標及任務
3.2.2需求分析階段的工作過程
3.3概念結構設計
3.3.1概念結構設計的目標及任務
3.3.2概念結構設計的一般策略和方法
3.3.3概念結構設計階段工作過程
3.4邏輯結構設計
3.4.1邏輯結構設計的目標及任務
3.4.2概念結構轉換成邏輯結構的方法
3.4.3邏輯結構設計階段工作過程
3.5物理結構設計
3.5.1物理結構設計的目標及任務
3.5.2物理結構設計時的注意事項
3.5.3物理結構設計階段工作過程
知識點樹
思考題
中篇技術詳解
第4章數據庫預備知識
4.1數據類型
4.1.1數值類型
4.1.2文本類型
4.1.3日期與時間類型
4.2運算符
4.2.1算術運算符
4.2.2比較運算符
4.2.3邏輯運算符
4.3函數
4.3.1字符串函數
4.3.2數學函數
4.3.3日期函數
4.3.4其他函數
知識點樹
思考題
第5章SQL
5.1SQL概述
5.1.1SQL的特點
5.1.2SQL的功能
5.2數據定義
5.2.1定義數據庫
5.2.2定義及維護數據庫表
5.2.3定義視圖
5.2.4定義觸發器
5.3數據操縱
5.3.1數據庫表的數據插入
5.3.2數據庫表的數據修改
5.3.3數據庫表的數據刪除
知識點樹
思考題
第6章數據庫
6.1數據庫的種類
6.1.1集中式數據庫
6.1.2分佈式數據庫
6.1.3雲數據庫
6.2存儲引擎
6.2.1InnoDB存儲引擎
6.2.2MyISAM存儲引擎
6.2.3MEMORY存儲引擎
6.2.4Archive存儲引擎
6.3數據庫創建與維護
6.3.1創建數據庫
6.3.2維護數據庫
6.3.3創建數據庫模式
知識點樹
思考題
第7章文件組織與索引
7.1文件組織
7.2什麼是索引
7.3創建索引的原則
7.4索引類型及創建索引
7.4.1普通索引和索引
7.4.2單列索引和組合索引
7.4.3全文索引
7.4.4空間索引
7.5維護索引
7.5.1查看索引
7.5.2刪除索引
知識點樹
思考題
第8章表與視圖
8.1表設計概述
8.2創建表及維護
8.2.1創建表
8.2.2表結構的維護
8.2.3表的鍵及約束
8.3表中數據的操縱
8.3.1插入數據
8.3.2修改數據
8.3.3刪除數據
8.4視圖概述
8.4.1什麼是視圖
8.4.2視圖的特性
8.5創建視圖
8.5.1創建單表視圖
8.5.2創建多表視圖
8.5.3維護視圖
8.6使用視圖
8.6.1使用視圖插入數據
8.6.2使用視圖更新數據
8.6.3使用視圖刪除數據
知識點樹
思考題
第9章數據查詢
9.1SELECT語句
9.2集函數查詢
9.3簡單查詢
9.3.1所有列查詢
9.3.2指定列查詢
9.3.3指定行查詢
9.3.4指定行、列查詢
9.3.5分組查詢
9.3.6條件分組查詢
9.4多表查詢
9.4.1兩表列查詢
9.4.2多表列查詢
9.4.3兩表條件查詢
9.4.4多表條件查詢
9.4.5多表指定行、列查詢
9.5嵌套查詢
9.5.1兩表嵌套查詢
9.5.2多表嵌套查詢
9.6子查詢
9.6.1帶IN關鍵字的子查詢
9.6.2帶比較運算符的子查詢
9.6.3帶ANY關鍵字的子查詢
9.帶ALL關鍵字的子查詢
9.6.5帶EXISTS關鍵字的子查詢
9.7SQL引擎
9.7.1SQL解析
9.7.2查詢優化
知識點樹
思考題
第10章數據庫完整性
10.1完整性約束
10.1.1實體完整性約束
10.1.2參照完整性約束
10.1.3用戶自定義完整性約束
10.2觸發器
10.2.1觸發器概述
10.2.2創建觸發器
10.2.3刪除觸發器
10.3存儲過程
10.3.1存儲過程概述
10.3.2創建存儲過程
10.3.3執行存儲過程
10.3.4刪除存儲過程
知識點樹
思考題
下篇系統應用
第11章數據庫系統控制
11.1事務
11.1.1事務ACID屬性
11.1.2調度
11.2恢復技術
11.2.1事務故障及恢復
11.2.2系統故障及恢復
11.2.3介質故障及恢復
11.3並發控制
11.3.1並發控制概述
11.3.2串行化調度
11.3.3封鎖的並發控制
11.3.4並發調度的可串行性
11.4數據庫安全
11.4.1數據庫安全概述
11.4.2用戶管理
11.4.3數據庫備份/恢復
11.4.4數據庫表導入/導出
知識點樹
思考題
第12章GaussDB(forMySQL)數據庫管理系統
12.1緣起
12.2系統結構
12.2.1雲環境的不同
12.2.2GaussDB體系架構
12.2.3日誌存儲
12.2.4頁存儲
12.2.5存儲抽象層
12.2.6數據庫前端
12.3數據存儲
12.3.1寫流程
12.3.2讀流程
12.4恢復與實現
12.4.1日誌存儲恢復
12.4.2頁存儲恢復
12.4.3SAL和數據庫恢復
12.5GaussDB整體架構
12.5.1GaussDB發展
12.5.2GaussDB架構概覽
12.5.3GaussDB雲數據庫架構
12.5.4GaussDB多模雲數據庫架構
知識點樹
思考題
第13章數據庫應用系統開發的一般方法
13.1總體設計
13.1.1提出問題
13.1.2總體系統架構
13.1.3系統功能
13.2數據庫設計
13.3數據庫管理與實現
13.3.1數據庫創建
13.3.2數據庫表的創建
13.3.3向數據表中輸入數據
13.3.4視圖設計
13.3.5存儲過程設計
13.3.6觸發器設計
13.4應用系統前端開發
13.4.1數據庫連接
13.4.2用戶登錄模塊設計
13.4.3數據維護
知識點樹
思考題
附錄A訪問GaussDB(forMySQL)用戶指南
參考文獻