數據庫系統 — 原理、設計與編程 (MOOC版)

陸鑫 張鳳荔 陳安龍

  • 出版商: 人民郵電
  • 出版日期: 2019-03-01
  • 定價: $359
  • 售價: 8.5$305
  • 語言: 簡體中文
  • 頁數: 332
  • 裝訂: 平裝
  • ISBN: 7115502749
  • ISBN-13: 9787115502742

立即出貨 (庫存 < 4)

買這商品的人也買了...

商品描述

本書從理論與實際應用相結合的角度出發,介紹數據庫系統的原理知識與技術應用方法,包括數據庫系統概述、關系數據模型、SQL數據庫操作語言、數據庫設計、數據庫管理、數據庫應用編程,以及分佈式NoSQL數據庫技術等內容。

作者簡介

陸鑫,電子科技大學信息與軟件工程學院副教授,長期從事計算機領域的教學和科研工作。在商業智能和企業信息化方面有較多的項目經驗,負責多個大型信息系統項目的規劃、設計、開發與管理。完成多項大型系統開發,如電子科技大學清水河校區數字化校園系統、大型商業自動化管理系統、煤氣管網GIS系統、環境保護GIS/GPS系統、化工企業集團大型MIS系統、包裝容器抗壓與堆碼微機測控系統、嵌入式家電控制器仿真平台系統、鋼管生產線監控跟踪系統等,其中數字化校園系統項目經費規模達幾千萬以上。對IT基礎設施中的網絡系統、主機系統、存儲系統、備份系統、安全系統、Unix/Linux操作系統、中間件平台系統等有全面了解與實踐經驗。特別對軟件系統分析與設計有較高造詣,對系統需求分析、體系結構設計、系統模型開發以及數據庫開發與應用等都有豐富實踐經驗。在數據挖掘、嵌入式計算方向有相應研究,參與完成研究項目“數據挖掘技術預測電價預測模型”“網格環境數據挖掘平台”“基於SOA企業應用集成平台技術”“高可靠現場級實時以態網研究”“信息家電系統仿真組件平台研製”等。

目錄大綱

第1章數據庫系統基礎1 


1.1數據庫及其係統的概念1 
1.1.1數據庫的定義1 
1.1.2數據模型2 
1.1.3數據庫系統的組成4 
1.2數據庫技術的發展7 
1.2.1數據管理技術的演化7 
1.2.2數據庫技術的發展階段8 
1.2.3數據庫領域的新技術9 
1.3數據庫應用系統12 
1.3.1數據庫應用系統的類型12 
1.3.2數據庫應用系統的結構13 
1.3.3數據庫應用系統的生命週期15 
1.4典型的數據庫管理系統17 
1.4.1 Microsoft SQL Server 17 
1.4.2 Oracle DataBase 18 
1.4.3 MySQL 18 
1.4.4 PostgreSQL 19 
1.5 PostgreSQL對象-關係數據庫系統軟件19 
1.5.1 PostgreSQL軟件的獲得19 
1.5 .2 PostgreSQL軟件的功能程序20 
1.5.3 PostgreSQL數據庫的管理工具21 
1.5.4 PostgreSQL數據庫對象23 
習題24 


第2章數據庫關係模型25 


2.1關係及其相關概念25
2.1.1關係的通俗定義25 
2.1.2關係的數學定義26 
2.1.3關係模式表示28 
2.1.4關係鍵的定義28 
2.2關係模型的原理29 
2.2.1關係模型的組成29 
2.2.2關係模型的操作30 
2.2.3數據完整性約束37 
2.3 PostgreSQL數據庫關係操作實踐40 
2.3.1項目案例——選課管理系統40 
2.3.2關係數據庫的創建42 
2.3.3關係表的創建43 
2.3.4實體完整性定義44 
2.3.5參照完整性定義46 
2.3.6用戶自定義完整性48 
習題49 


第3章數據庫操作語言SQL 53 


3.1 SQL概述53 
3.1.1 SQL的發展53 
3.1.2 SQL的特點54 
3.1. 3 SQL的類型54 
3.1.4 SQL的數據類型55 
3.2數據定義SQL語句58 
3.2.1數據庫的定義58 
3.2.2數據庫表對象的定義60 
3.2.3數據表索引對象的定義65 
3.3數據操縱SQL語句67 
3.3.1數據插入SQL語句67 
3.3.2數據更新SQL語句68
3.3.3數據刪除SQL語句69 
3.4數據查詢SQL語句70 
3.4.1查詢語句基本結構70 
3.4.2從單表讀取指定列71 
3.4.3從單表讀取指定行72 
3.4.4從單表讀取指定行和列73 
3.4.5 WHERE子句條件73 
3.4.6查詢結果排序75 
3.4.7內置函數的使用76 
3.4.8查詢結果分組處理80 
3.4.9使用子查詢處理多表81 
3.4. 10使用連接查詢多表82 
3.4.11 SQL JOIN…ON連接83 
3.5數據控制SQL語句86 
3.5.1 GRANT語句86 
3.5.2 REVOKE語句87 
3.5.3 DENY語句87 
3.6視圖SQL語句87 
3.6.1視圖的概念87 
3.6.2視圖的創建與刪除88 
3.6.3視圖的使用89 
3.7 PostgreSQL數據庫SQL實踐92 
3.7.1項目案例——工程項目管理系統92 
3.7.2數據庫的創建93 
3.7.3數據庫表的定義94 
3.7.4數據的維護操作95 
3.7.5多表的關聯查詢98 
3.7.6視圖的應用100
習題102 


第4章數據庫設計與實現105 


4.1數據庫設計概述105 
4.1.1數據庫設計方案105 
4.1.2數據庫設計過程與策略107 
4.1.3數據庫建模設計工具108 
4.2 ER模型109 
4.2.1模型基本元素109 
4.2.2實體聯繫類型111 
4.2.3強弱實體114 
4.2.4標識符依賴實體114 
4.2.5 ER模型圖115 
4.3數據庫建模設計116 
4.3.1概念數據模型設計116 
4.3.2邏輯數據模型設計119 
4.3.3物理數據模型設計121 
4.4數據庫規範化設計128 
4.4.1非規範化關係表的問題129 
4.4.2函數依賴理論130 
4.4.3規範化設計範式132 
4.4.4逆規範化處理134 
4.5數據庫設計模型的SQL實現136 
4.5.1確定數據庫設計的實現方式136 
4.5.2設計模型轉換為SQL腳本程序137 
4.6基於PowerDesigner的數據庫設計建模實踐138 
4.6.1項目案例——圖書借閱管理系統138 
4.6.2系統概念數據模型設計138
4.6.3系統邏輯數據模型設計142 
4.6.4系統物理數據模型設計144 
4.6.5 PostgreSQL數據庫實現146 
習題154 


第5章數據庫管理156 


5.1數據庫管理概述156 
5.1.1數據庫管理的目標與內容156 
5.1. 2數據庫管理工具157 
5.1.3 DBMS管理功能157 
5.1.4 DBMS結構158 
5.2事務管理159 
5.2.1事務的概念159 
5.2.2事務的特性161 
5.2.3事務的並發執行161 
5.2.4事務SQL語句162 
5.3並發控制165 
5.3.1並發控制問題165 
5.3.2並發事務調度168 
5.3.3數據庫鎖機制170 
5.3.4基於鎖的並發控制協議171 
5.3.5兩階段鎖定協議174 
5.3.6並發事務死鎖解決175 
5.3.7事務隔離級別176 
5.4安全管理176 
5.4.1數據庫系統安全概述177 
5.4.2數據庫系統安全模型177 
5.4.3用戶管理179 
5.4.4權限管理182 
5.4.5角色管理184
5.5備份與恢復187 
5.5.1數據庫備份187 
5.5.2 PostgreSQL數據庫的備份方法189 
5.5.3數據庫恢復194 
5.5.4 PostgreSQL數據庫的恢復方法195 
5.6 PostgreSQL數據庫管理項目實踐198 
5.6.1項目案例——成績管理系統198 
5.6.2數據庫角色管理199 
5.6.3數據庫權限管理200 
5.6.4數據庫用戶管理201 
5.6.5數據庫備份與恢復管理202 
習題204 


第6章數據庫應用編程206 


6.1數據庫連接技術206 
6.1.1 ODBC技術206 
6.1.2 JDBC技術209 
6.2 Java Web數據庫編程215 
6.2.1 Java Web簡介215 
6.2.2 Java Web開發運行環境215 
6.2.3 Servlet技術216 
6.2.4 JSP技術217 
6.2.5 JavaBean技術227 
6.2 .6 MyBatis訪問數據庫技術227 
6.2.7 MyBatis數據庫編程229 
6.3存儲過程編程235 
6.3.1存儲過程的基礎知識236 
6.3.2存儲過程的優點244
6.3.3存儲過程的缺點244 
6.4觸發器編程245 
6.4.1觸發器的語法結構245 
6.4.2觸發器的編程技術248 
6.4.3事件觸發器250 
6.4.4觸發器的應用252 
6.4.5使用觸發器的優點253 
6.5游標編程253 
6.5.1游標的基礎知識253 
6.5.2游標的應用編程255 
6.6嵌入式SQL編程257 
6.6.1嵌入式SQL的處理過程257 
6.6.2嵌入式SQL的基本語法257 
6.6.3嵌入式SQL的通信方式258 
6.7數據庫應用編程項目實踐260 
6.7.1項目案例——課程管理系統260 
6.7.2功能模塊設計262 
6.7.3模塊的編碼實現263 
習題272 


第7章NoSQL數據庫技術274 


7.1 NoSQL數據庫概述274 
7.1.1關係數據庫的局限275 
7.1.2 NoSQL理論基礎276 
7.1.3 NoSQL基本概念277 
7.2列存儲數據庫280 
7.2.1列存儲的概念280 
7.2.2 HBase數據庫的概念281 
7.2.3 HBase數據庫的存儲結構284
7.2.4 HBase數據庫的系統架構與組成286 
7.2.5 HBase數據庫的應用場景288 
7.3鍵值對數據庫288 
7.3.1鍵值對存儲的概念289 
7.3.2 Redis數據庫的基本知識289 
7.3.3 Redis數據庫的結構290 
7.3.4 Redis數據庫的相關操作294 
7.3.5 Redis數據庫的體系結構295 
7.3.6 Redis數據庫的應用場景296 
7.4文檔數據庫297 
7.4.1文檔存儲的概念297 
7.4.2 MongoDB數據庫的基本概念297 
7.4.3 MongoDB數據庫的管理299 
7.4.4 MongoDB數據庫的集群架構300 
7.4.5 MongoDB數據庫的應用場景304 
7.5圖形數據庫304 
7.5.1圖形數據模型306 
7.5.2 Neo4j圖形數據庫309 
7.5.3 Neo4j圖形數據庫的存儲結構311 
7.5.4 Neo4j數據庫的集群結構313 
7.5.5 Neo4j數據庫的查詢語言CQL 314 
7.6 NoSQL數據庫項目實踐316 
7.6.1項目案例——成績管理系統316 
7.6.2設計HBase數據庫表317 
7.6 .3安裝HBase數據庫318
7.6.4使用HBase Shell 318 
7.6.5操作HBase數據庫320 
習題324 
附錄PostgreSQL數據庫系統實驗項目326 
實驗1圖書銷售管理系統數據庫設計326 
實驗2圖書銷售管理系統數據庫的創建與數據訪問操作327 
實驗3圖書銷售管理系統數據庫後端編程328 
實驗4圖書銷售管理系統數據庫安全管理329 
實驗5圖書銷售管理系統數據庫應用JSP訪問編程330 
參考文獻332