SQL Server 數據庫應用與開發教程, 5/e (2016版)
內容描述
《SQL Server數據庫應用與開發教程(第五版)(2016版)》全面講述Microsoft SQL Server關系數據庫管理系統的基本原理和技術。全書共分為15章,深入介紹Microsoft SQL Server 2016系統的基本特點、安裝和配置技術、Transact-SQL語言、安全性管理、數據庫和表的管理,以及索引、數據更新、備份和恢復、數據完整性、數據復制、性能監視和自動化技術等內容。 《SQL Server數據庫應用與開發教程(第五版)(2016版)》內容豐富、結構合理、思路清晰、語言簡潔流暢、示例翔實,主要面向數據庫初學者,既適合作為高等院校的數據庫教材,也適合作為Microsoft SQL Server應用開發人員的參考書。 《SQL Server數據庫應用與開發教程(第五版)(2016版)》提供實例操作的教學視頻,讀者掃描封底或前言中的二維碼即可觀看。《SQL Server數據庫應用與開發教程(第五版)(2016版)》配套的電子課件、習題答案、實例源文件和實例數據庫可以通過http://www.tupwk.com.cn/downpage網站下載,也可以通過掃描封底或前言中的二維碼推送到指定郵箱。
目錄大綱
第1章初識SQL Server 2016 1
1.1 SQL Server 2016應用領域1
1.2 SQL Server 2016的重要新增功能2
1.2.1生產DBA 2
1.2.2開發DBA 3
1.2.3商業智能DBA 4
1.3 SQL Server體系結構5
1.3.1數據庫文件和事務日誌5
1.3.2 SQL Server Native Client 5
1.3.3系統數據庫6
1.3.4架構8
1.3.5同義詞9
1.3.6動態管理對象9
1.3.7數據類型10
1.4 SQL Server版本15
1.4.1版本概覽15
1.4.2許可16
1.5小結18
1.6經典習題18
第2章SQL Server 2016基礎19
2.1安裝規劃20
2.1.1硬件選擇20
2.1.2軟件和安裝選擇24
2.2安裝SQL Server 26
2.2.1全新安裝26
2.2.2並列安裝26
2.2.3升級安裝26
2.2.4手動安裝27
2.2.5自動安裝29
2.3系統壓力測試34
2.4安裝後的配置35
2.4.1配置SQL Server設置以實現高性能35
2.4.2 tempdb 36
2.4.3 SQL Server的安全設置37
2.4.4 SQL Server配置管理器38
2.4.5備份39
2.5卸載SQL Server 39
2.5.1卸載Reporting Services 39
2.5.2卸載Analysis Services 39
2.5.3卸載SQL Server數據庫引擎39
2.6安裝失敗故障排除40
2.7小結40
2.8經典習題40
第3章數據庫和表41
3.1數據庫的組成41
3.1.1 SQL Sever 2016常用的邏輯對象42
3.1.2數據庫文件和文件組43
3.2系統數據庫45
3.2.1 SQL Server包含的系統數據庫45
3.2.2在對象資源管理器中隱藏系統對象47
3.3創建數據庫47
3.3.1使用SQL Server Management Studio圖形界面創建數據庫47
3.3.2使用Transact-SQL語句創建數據庫51
3.4管理數據庫52
3.4.1修改數據庫52
3.4.2查看數據庫信息55
3.4.3重命名數據庫56
3.4. 4刪除數據庫56
3.4.5分離數據庫和附加數據庫57
3.5數據類型59
3.5.1系統數據類型59
3.5.2用戶自定義的數據類型63
3.6創建數據表64
3.6.1使用SQL Server Management Studio創建表64
3.6.2使用Transact-SQL語句創建表65
3.7管理數據表66
3.7.1使用Transact-SQL語句添加、刪除和修改字段66
3.7.2查看數據表67
3.7.3刪除數據表69
3.8經典習題70
第4章Transact-SQL語言基礎71
4.1 Transact-SQL概述71
4.1.1 Transact-SQL語法約定71
4.1.2多部分名稱72
4.1.3如何命名標識符73
4.1.4系統保留字74
4.2常量75
4.2.1字符串型常量76
4.2.2數值型常量76
4.2.3日期和時間型常量76
4.3變量76
4.3.1全局變量76
4.3.2局部變量77
4.4運算符和表達式77
4.4.1運算符77
4.4.2表達式79
4.5 Transact-SQL利器——通配符81
4.6 Transact-SQL語言中的註釋81
4.7數據定義語言82
4.8數據操縱語言82
4.9數據控制語言82
4.10其他基本語句83
4.10.1數據聲明83
4.10.2數據賦值83
4.10.3數據輸出83
4.11流程控制語句84
4.11.1 BEGIN…END語句84
4.11.2 IF… ELSE條件語句84
4.11.3 CASE語句85
4.11.4 WHILE…CONTINUE…BREAK語句86
4.11.5 GOTO語句87
4.11.6 WAITFOR語句87
4.11.7 RETURN語句88
4.12批處理語句88
4.12.1批處理的基本概念88
4.12.2每個批處理單獨發送到服務器89
4.12.3何時使用批處理89
4.12.4使用批處理建立優先級90
4.12.5批處理的執行91
4.12.6批處理中的錯誤93
4.12.7 GO不是Transact-SQL命令94
4.13 SQL Server 2016函數簡介94
4.13.1字符串函數94
4.13. 2數學函數96
4.13.3數據類型轉換函數97
4.13.4日期和時間函數98
4.13.5系統函數99
4.14為學生選課表增加10萬行測試數據99
4.15經典習題102
第5章數據查詢103
5.1工作場景導入103
5.2查詢工具的使用104
5.3關係代數105
5.3.1選擇105
5.3.2投影105
5.3.3連接106
5.4簡單查詢107
5.4.1 SELECT語句對列的查詢108
5.4.2 SELECT語句對行的選擇111
5.4.3對查詢結果進行排序116
5.4.4對查詢結果進行統計117
5.4.5將查詢結果生成新表119
5.5連接查詢120
5.5.1交叉連接120
5.5.2內連接121
5.5.3外連接123
5.6嵌套查詢124
5.6.1帶有IN謂詞的子查詢125
5.6.2帶有比較運算符的子查詢126
5.6. 3帶有ANY、SOME或ALL關鍵字的子查詢127
5.6.4帶有EXISTS謂詞的子查詢127
5.7聯合查詢130
5.7.1 UNION操作符130
5.7.2 INTERSECT操作符130
5.7.3 EXCEPT操作符131
5.8使用排序函數132
5.8.1 ROW_NUMBER() 132
5.8.2 RANK() 133
5.8.3 DENSE_RANK() 134
5.8.4 NTILE() 134
5.9動態查詢135
5.10經典習題137
第6章數據更新138
6.1工作場景導入138
6.2插入數據138
6.2.1插入單行數據139
6.2.2插入多行數據140
6.3修改數據142
6.3.1修改單行數據142
6.3.2修改多行數據143
6.4刪除數據144
6.4.1使用DELETE語句刪除數據144
6.4.2使用TRUNCATE TABLE語句清空表145
6.5經典習題145
第7章數據完整性146
7.1工作場景導入146
7.2如何實現數據完整性146
7.3規則對象的基本操作148
7.3.1創建規則對象148
7.3.2綁定規則對象149
7.3.3驗證規則對象149
7.3.4解除規則對象綁定149
7.3.5刪除規則對象150
7.4默認值對象的基本操作150
7.4. 1創建默認值對象150
7.4.2綁定默認值對象150
7.4.3解除默認值對象綁定150
7.4.4刪除默認值對象151
7.5完整性約束151
7.5.1 PRIMARY KEY約束151
7.5.2 FOREIGN KEY約束154
7.5.3 UNIQUE約束156
7.5.4 CHECK約束156
7.5.5 DEFAULT約束157
7.5.6 N0T NULL約束157
7.6經典習題158
第8章數據庫索引159
8.1 SQL Server 2016中新增的索引159
8.2索引和分區表162
8.2.1理解索引162
8.2.2創建索引166
8.2.3使用分區表和索引168
8.3索引維護168
8.3.1監控索引碎片169
8.3.2清理索引170
8.4使用索引改進查詢性能171
8.5數據庫引擎優化顧問175
8.6太多的索引會導致成本更高176
8.7小結177
8.8經典習題178
第9章事務、鎖和游標179
9.1工作場景導入179
9.2事務管理180
9.2.1事務的原理180
9.2.2事務的概念180
9.2.3事務的特性180
9.2.4事務的工作原理181
9.2.5事務的執行模式181
9.2.6事務的應用案例182
9.2.7使用事務時的考慮因素187
9.3鎖188
9.3.1事務的缺陷188
9.3.2鎖的概念189
9.3.3隔離性的級別189
9.3.4鎖的空間管理及粒度191
9.3.5鎖的類別191
9.3.6如何在SQL Server中查看數據庫中的鎖192
9.3.7死鎖及其防止193
9.4游標194
9.4.1游標概述194
9.4.2聲明游標195
9.4.3打開游標196
9.4.4讀取游標197
9.4.5關閉游標199
9.4.6刪除游標199
9.5經典習題199
第10章存儲過程和触發器200
10.1存儲過程200
10.1.1存儲過程的基本概念200
10.1.2存儲過程的類型201
10.1.3用戶存儲過程的創建與執行202
10.1.4存儲過程的查看、修改和刪除206
10.2觸發器209
10.2.1觸發器概述209
10.2.2 DML觸發器的創建和應用210
10.2.3 DDL觸發器的創建和應用212
10.2.4查看、修改和刪除觸發器213
10.3經典習題215
第11章視圖216
11.1視圖概述216
11.1.1視圖的概念216
11.1.2視圖的分類217
11.1.3視圖的優點和作用217
11.2創建視圖218
11.2.1使用視圖設計器創建視圖218
11.2.2使用Transact-SQL命令創建視圖219
11.3修改視圖221
11.4查看視圖221
11.4.1使用SSMS圖形化工具查看視圖的定義信息221
11.4.2使用系統存儲過程查看視圖的定義信息223
11.5更新視圖225
11.5.1通過視圖向基本表中插入數據226
11.5.2通過視圖修改基本表中的數據226
11.5.3通過視圖刪除基本表中的數據227
11.6刪除視圖228
11.6.1使用對象資源管理器刪除視圖228
11.6.2使用Transact-SQL命令刪除視圖228
11.7經典習題228
第12章數據庫安全機制230
12.1 SQL Server 2016安全性概述230
12.1.1 SQL Server網絡安全基礎231
12.1.2 SQL Server 2016的安全性體系結構233
12.1.3 SQL Server 2016安全機制的總體策略240
12.2管理用戶241
12.2.1管理對SQL Server實例的訪問241
12.2.2管理對SQL Server數據庫的訪問250
12.3角色管理252
12.3.1服務器級角色252
12.3.2數據庫級角色256
12.3.3自定義數據庫角色259
12.3.4應用程序角色260
12.4管理架構262
12.4.1認識架構263
12.4.2使用默認架構264
12.5權限管理264
12.5.1授予權限265
12.5.2撤銷權限265
12.5.3拒絕權限266
12.6經典習題266
第13章數據庫的備份與恢復267
13.1備份與恢復267
13.1.1備份類型268
13.1.2恢復模式268
13.1.3設置恢復模式269
13.2備份設備269
13.2.1創建備份設備270
13.2.2刪除備份設備271
13.3備份數據庫271
13.3.1完整備份271
13.3.2差異備份273
13.3.3事務日誌備份274
13.4在SQL Server Management Studio中還原數據庫274
13.5用Transact-SQL語句還原數據庫275
13.5.1完整備份還原275
13.5.2差異備份還原276
13.5.3事務日誌還原276
13.6建立自動備份的維護計劃277
13.7經典習題283
第14章自動化SQL Server 284
14.1維護計劃284
14.1.1維護計劃嚮導285
14.1.2維護計劃設計器288
14.2使用SQL Server代理自動化SQL Server 290
14.2.1作業291
14.2.2計劃295
14.2.3操作員295
14.2.4警報298
14.3 SQL Server代理安全性302
14.3.1服務賬戶302
14.3.2訪問SQL Server代理302
14.3.3 SQL Server代理的代理303
14.4小結305
14.5經典習題306
第15章監控SQL Server 307
15.1選擇合適的監控工具307
15.2性能監視器309
15.2.1 CPU資源計數器310
15.2.2磁盤活動311
15.2 .3內存使用率315
15.2.4性能監控工具318
15.3監控事件319
15.3.1默認跟踪321
15.3.2 system_health會話322
15.3.3 SQL跟踪322
15.4監控日誌325
15.4.1監控SQL Server錯誤日誌326
15.4. 2監控Windows事件日誌326
15.5經典習題326
參考文獻327