本書為SQL Server入門到提高圖書,共17章,主要內(nèi)容包括數(shù)據(jù)庫基礎(chǔ)、SQL Server數(shù)據(jù)庫的安裝與配置、創(chuàng)建和管理數(shù)據(jù)庫、數(shù)據(jù)表操作、視圖操作、SQL的基礎(chǔ)知識、數(shù)據(jù)的查詢、索引與數(shù)據(jù)完整性、流程控制、用戶自定義函數(shù)、存儲過程的使用、觸發(fā)器的使用、游標(biāo)的使用、SQL Server高級開發(fā)、SQL Server安全管理、SQL Server維護管理,最后講解了學(xué)生成績管理系統(tǒng)項目。本書每章內(nèi)容都與實例緊密結(jié)合,有助于讀者理解知識、應(yīng)用知識,達到學(xué)以致用的目的。
本書附有配套資源,包括本書所有實例的源碼及教學(xué)視頻。其中,源碼全部經(jīng)過精心測試,能夠在Windows XP、Windows 7、Windows 8、Windows 10系統(tǒng)中編譯和運行。
本書可作為應(yīng)用型本科計算機專業(yè)、高職軟件技術(shù)專業(yè)及其他相關(guān)專業(yè)的教材,同時也適合初級數(shù)據(jù)庫開發(fā)人員參考使用。
1.循序漸進,自學(xué)有道。本書從基礎(chǔ)→提高→高級→項目實戰(zhàn),符合讀者學(xué)習(xí)路線。
2.關(guān)鍵技術(shù),實例解析。全書通過“實例”的形式,將知識融入到實例講解中,使知識與實例相輔相成。
3.資源豐富。本書提供源碼、視頻課程等配套資源。
4.技術(shù)服務(wù)完善。作者團隊提供企業(yè)QQ、論壇、郵箱、客服電話、明日學(xué)院官方網(wǎng)站等多渠道的技術(shù)支持與服務(wù),在線為讀者答疑解惑。
明日科技
一個擁有軟件開發(fā)和項目實施方面經(jīng)驗的學(xué)習(xí)型技術(shù)團隊,利用多年積累的專業(yè)知識,已出版了“從入門到精通”“軟件開發(fā)實戰(zhàn) 1200 例”“軟件開發(fā)實戰(zhàn)寶典”“軟件項目開發(fā)全程實錄”等系列叢書,是國內(nèi)排名前列的編程圖書品牌。
目 錄
CONTENTS
基礎(chǔ)篇
第 1章 數(shù)據(jù)庫基礎(chǔ)
1.1.數(shù)據(jù)庫系統(tǒng)簡介 002
1.1.1.數(shù)據(jù)庫技術(shù)的發(fā)展 002
1.1.2.數(shù)據(jù)庫系統(tǒng)的組成 003
1.2.數(shù)據(jù)庫的體系結(jié)構(gòu) 003
1.2.1.數(shù)據(jù)庫的三級模式結(jié)構(gòu) 003
1.2.2.三級模式之間的映射 004
1.3.數(shù)據(jù)模型 004
1.3.1.數(shù)據(jù)模型的概念 004
1.3.2.常用的數(shù)據(jù)模型 005
1.3.3.關(guān)系數(shù)據(jù)庫的規(guī)范化 006
1.3.4.數(shù)據(jù)庫的設(shè)計原則 006
1.3.5.實體與關(guān)系 006
1.4.常見的關(guān)系數(shù)據(jù)庫 006
1.4.1.Access數(shù)據(jù)庫 006
1.4.2.SQL Server數(shù)據(jù)庫 007
1.4.3.Oracle數(shù)據(jù)庫 007
1.4.4.MySQL數(shù)據(jù)庫 007
1.5.Transact-SQL簡介 008
1.6.小結(jié) 009
第 2章 SQL Server數(shù)據(jù)庫的安裝與配置
2.1 SQL Server 2019簡介 010
2.2 SQL Server 2019的下載/安裝/卸載 011
2.2.1 SQL Server 2019的安裝要求 011
2.2.2 了解賬戶和身份驗證模式 011
2.2.3 下載SQL Server 2019 012
2.2.4 安裝SQL Server 2019 017
2.2.5.SQL Server 2019的卸載 024
2.3.啟動SQL Server 2019的服務(wù) 025
2.3.1.后臺啟動SQL Server 2019的服務(wù) 025
2.3.2.通過SQL Server配置管理器啟動SQL Server 2019的服務(wù) 027
2.4.安裝與使用SQL Server Management Studio 028
2.4.1.下載SQL Server Management Studio 028
2.4.2.安裝SQL Server Management Studio 029
2.4.3.啟動SQL Server Management Studio 031
2.4.4.使用SQL Server Management Studio的查詢編輯器 032
2.5.注冊SQL Server 2019 服務(wù)器 036
2.5.1.服務(wù)器組的創(chuàng)建與刪除 036
2.5.2.服務(wù)器的注冊與刪除 038
2.6.小結(jié) 041
第3章 創(chuàng)建和管理數(shù)據(jù)庫
3.1 認(rèn)識數(shù)據(jù)庫 042
3.1.1 數(shù)據(jù)庫的基本概念 042
3.1.2 常用的數(shù)據(jù)庫對象 043
3.1.3 數(shù)據(jù)庫的組成 043
3.1.4 系統(tǒng)數(shù)據(jù)庫 044
3.2.SQL Server的命名規(guī)范 045
3.2.1.標(biāo)識符 045
3.2.2.對象命名規(guī)則 046
3.2.3.實例命名規(guī)則 047
3.3.數(shù)據(jù)庫操作 047
3.3.1.創(chuàng)建數(shù)據(jù)庫 047
3.3.2.修改數(shù)據(jù)庫 049
3.3.3.刪除數(shù)據(jù)庫 052
3.4.小結(jié) 054
第4章 數(shù)據(jù)表操作
4.1.數(shù)據(jù)表的增刪改查 055
4.1.1.數(shù)據(jù)表的基礎(chǔ)知識 055
4.1.2.表的設(shè)計原則 059
4.1.3.以界面的方式創(chuàng)建、修改和刪除數(shù)據(jù)表 060
4.1.4 .使用CREATE TABLE語句創(chuàng)建表 061
4.1.5.創(chuàng)建、修改和刪除約束 062
4.1.6.使用ALTER TABLE語句修改表 074
4.1.7.使用DROP TABLE語句刪除表 076
4.2.分區(qū)表 077
4.2.1.分區(qū)表概述 077
4.2.2.以界面的方式創(chuàng)建分區(qū)表 077
4.2.3.以命令的方式創(chuàng)建分區(qū)表 080
4.3 數(shù)據(jù)表記錄的操作 082
4.3.1 使用企業(yè)管理器添加記錄 082
4.3.2 使用INSERT語句插入記錄 083
4.3.3 使用企業(yè)管理器修改記錄 084
4.3.4 使用UPDATE語句修改記錄 084
4.3.5 使用企業(yè)管理器刪除記錄 085
4.3.6 使用DELETE語句刪除記錄 085
4.4.表與表之間的關(guān)系 086
4.4.1.一對一關(guān)系 086
4.4.2.一對多關(guān)系 087
4.4.3.多對多關(guān)系 088
4.5.小結(jié) 088
第5章 視圖操作
5.1.視圖概述 089
5.2.視圖的操作 090
5.2.1.以界面的方式操作視圖 090
5.2.2.使用CREATE VIEW語句創(chuàng)建視圖 091
5.2.3.使用ALTER VIEW語句修改視圖 092
5.2.4.使用DROP VIEW語句刪除視圖 093
5.2.5.使用存儲過程sp_rename修改視圖 094
5.3.視圖中的數(shù)據(jù)操作 094
5.3.1.在視圖中瀏覽數(shù)據(jù) 094
5.3.2.通過視圖添加數(shù)據(jù) 095
5.3.3.通過視圖修改數(shù)據(jù) 096
5.3.4.通過視圖刪除數(shù)據(jù) 096
5.4.小結(jié) 096
第6章 SQL的基礎(chǔ)知識
6.1.T-SQL概述 097
6.1.1.T-SQL的組成 097
6.1.2.T-SQL語句的結(jié)構(gòu) 099
6.2.常量 100
6.3.變量 101
6.3.1.局部變量 101
6.3.2.全局變量 103
6.4.注釋符、運算符與通配符 105
6.4.1.注釋符 105
6.4.2.運算符 105
6.4.3.通配符 109
6.5.常用語句 109
6.5.1.DBCC語句 110
6.5.2.CHECKPOINT語句 111
6.5.3.DECLARE語句 111
6.5.4.PRINT語句 113
6.5.5.RAISERROR語句 114
6.5.6.READTEXT語句 115
6.5.7.BACKUP語句 115
6.5.8.RESTORE語句 116
6.5.9.SELECT語句 118
6.5.10.SET語句 120
6.5.11.SHUTDOWN語句 121
6.5.12.WRITETEXT語句 121
6.5.13.USE語句 122
6.6.小結(jié) 122
提高篇
第7章 數(shù)據(jù)的查詢
7.1 創(chuàng)建查詢和測試查詢 124
7.2 選擇查詢 125
7.2.1 簡單的SELECT查詢 125
7.2.2 重新對字段排序 127
7.2.3 使用運算符或函數(shù)進行字段計算 128
7.2.4 利用WHERE子句過濾數(shù)據(jù) 129
7.2.5 消除重復(fù)記錄 136
7.2.6 TOP關(guān)鍵字 136
7.3 數(shù)據(jù)匯總 137
7.3.1 使用聚合函數(shù) 137
7.3.2 使用GROUP BY子句 138
7.3.3 使用HAVING子句 139
7.4 基于多表的連接查詢 140
7.4.1 連接謂詞 140
7.4.2 以JOIN關(guān)鍵字指定的連接 140
7.5 嵌套查詢 143
7.5.1 帶IN或NOT IN的嵌套查詢 143
7.5.2 帶比較運算符的嵌套查詢 145
7.5.3 帶SOME的嵌套查詢 145
7.5.4 帶ANY的嵌套查詢 146
7.5.5 帶ALL的嵌套查詢 146
7.5.6 帶EXISTS的嵌套查詢 147
7.6 使用UNION合并多個查詢結(jié)果 148
7.6.1 合并與連接的區(qū)別 148
7.6.2 使用UNION ALL合并表 149
7.6.3 合并表中的ORDER BY子句 149
7.6.4 合并表中的自動數(shù)據(jù)類型轉(zhuǎn)換 150
7.6.5 使用UNION合并不同數(shù)據(jù)類型的數(shù)據(jù) 151
7.6.6 使用UNION合并有不同列數(shù)的兩個表 151
7.6.7 使用UNION進行多表合并 152
7.7.使用CASE語句進行查詢 152
7.8.小結(jié) 154
第8章 索引與數(shù)據(jù)完整性
8.1.索引 155
8.1.1 索引的概念 155
8.1.2 索引的優(yōu)缺點 156
8.1.3 索引的分類 156
8.1.4 索引的創(chuàng)建 157
8.1.5 索引的刪除 160
8.1.6 索引的分析與維護 161
8.2 全文索引 165
8.2.1 使用可視化管理工具啟用全文索引 165
8.2.2 使用T-SQL語句啟用全文索引 168
8.2.3 使用T-SQL語句刪除全文索引 171
8.2.4 全文目錄 171
8.2.5 全文目錄的維護 174
8.3 數(shù)據(jù)完整性 177
8.3.1 數(shù)據(jù)完整性概述 177
8.3.2 實現(xiàn)數(shù)據(jù)完整性 179
8.4 小結(jié) 180
第9章 流程控制
9.1.流程控制語句概述 181
9.2.BEGIN...END語句 182
9.3.選擇語句 183
9.3.1.IF語句 183
9.3.2.IF...ELSE語句 184
9.3.3.CASE語句 185
9.4.循環(huán)語句 188
9.4.1.WHILE語句 188
9.4.2.WHILE...CONTINUE...BREAK語句 189
9.5.其他常用語句 190
9.5.1.RETURN語句 190
9.5.2.GOTO語句 191
9.5.3.WAITFOR語句 192
9.6 小結(jié) 192
第 10章 用戶自定義函數(shù)
10.1 創(chuàng)建用戶自定義函數(shù) 193
10.2 使用SQL語句創(chuàng)建用戶自定義函數(shù) 194
10.3 修改、刪除用戶自定義函數(shù) 195
10.4.小結(jié) 196
第 11章 存儲過程的使用
11.1 存儲過程簡介 197
11.1.1 存儲過程的優(yōu)點 197
11.1.2 存儲過程的類別 198
11.2 創(chuàng)建存儲過程 198
11.2.1 使用企業(yè)管理器創(chuàng)建存儲過程 198
11.2.2 使用T-SQL創(chuàng)建存儲過程 202
11.3 執(zhí)行存儲過程 203
11.4 查看和修改存儲過程 204
11.4.1 使用企業(yè)管理器查看和修改存儲過程 204
11.4.2 使用T-SQL查看和修改存儲過程 205
11.5 刪除存儲過程 208
11.5.1 使用企業(yè)管理器刪除存儲過程 208
11.5.2 使用T-SQL刪除存儲過程 208
11.6.小結(jié) 209
第 12章 觸發(fā)器的使用
12.1 觸發(fā)器簡介 210
12.1.1 觸發(fā)器的概念 210
12.1.2 觸發(fā)器的功能 210
12.1.3 觸發(fā)器的類型和觸發(fā)操作 211
12.2 創(chuàng)建觸發(fā)器 212
12.2.1 使用企業(yè)管理器創(chuàng)建觸發(fā)器 212
12.2.2 使用T-SQL創(chuàng)建觸發(fā)器 213
12.3 修改觸發(fā)器 217
12.3.1 使用企業(yè)管理器修改觸發(fā)器 217
12.3.2 使用T-SQL管理觸發(fā)器 217
12.4.刪除觸發(fā)器 220
12.4.1 使用企業(yè)管理器刪除觸發(fā)器 220
12.4.2 使用T-SQL刪除觸發(fā)器 220
12.5 小結(jié) 221
第 13章 游標(biāo)的使用
13.1.游標(biāo)簡介 222
13.1.1.游標(biāo)的實現(xiàn) 223
13.1.2.游標(biāo)的類型 223
13.2.游標(biāo)的基本操作 224
13.2.1.聲明游標(biāo) 224
13.2.2.打開游標(biāo) 227
13.2.3.讀取游標(biāo)中的數(shù)據(jù) 227
13.2.4.關(guān)閉游標(biāo) 229
13.2.5.釋放游標(biāo) 230
13.3.使用系統(tǒng)存儲過程查看游標(biāo) 231
13.3.1.使用sp_cursor_list查看游標(biāo) 231
13.3.2.使用sp_describe_cursor查看游標(biāo) 233
13.4.小結(jié) 235
第 14章 SQL Server高級開發(fā)
14.1 事務(wù)處理 236
14.1.1 事務(wù)的概念 236
14.1.2 顯式事務(wù)與隱式事務(wù) 237
14.1.3 事務(wù)處理 239
14.1.4.事務(wù)的并發(fā)問題 242
14.1.5.事務(wù)的隔離級別 242
14.2.鎖 245
14. 2.1.鎖的簡介 245
14.2.2 死鎖及其排除方法 247
14.3.小結(jié) 248
高級篇
第 15章 SQL Server安全管理
15.1.SQL Server身份驗證 250
15.1.1.驗證模式 250
15.1.2.設(shè)置SQL Server身份驗證模式 251
15.1.3.管理登錄賬號 252
15.2.數(shù)據(jù)庫用戶 260
15.2.1.創(chuàng)建數(shù)據(jù)庫用戶 261
15.2.2.刪除數(shù)據(jù)庫用戶 262
15.3.SQL Server角色 262
15.3.1.固定服務(wù)器角色 262
15.3.2.固定數(shù)據(jù)庫角色 263
15.3.3.管理SQL Server角色 263
15.4.管理SQL Server權(quán)限 265
15.5.小結(jié) 267
第 16章 SQL Server維護管理
16.1 脫機與聯(lián)機數(shù)據(jù)庫 268
16.1.1 脫機數(shù)據(jù)庫 268
16.1.2 聯(lián)機數(shù)據(jù)庫 269
16.2 分離和附加數(shù)據(jù)庫 270
16.2.1 分離數(shù)據(jù)庫 270
16.2.2 附加數(shù)據(jù)庫 272
16.3 導(dǎo)入和導(dǎo)出數(shù)據(jù)表 273
16.3.1 導(dǎo)入SQL Server數(shù)據(jù)表 273
16.3.2 導(dǎo)入Access數(shù)據(jù)表 276
16.3.3 導(dǎo)出SQL Server數(shù)據(jù)表到Access數(shù)據(jù)庫 280
16.4 備份和恢復(fù)數(shù)據(jù)庫 285
16.4.1 備份類型 285
16.4.2 恢復(fù)類型 286
16.4.3 備份數(shù)據(jù)庫 286
16.4.4 恢復(fù)數(shù)據(jù)庫 288
16.5.收縮數(shù)據(jù)庫 291
16.5.1.自動收縮數(shù)據(jù)庫 291
16.5.2.手動收縮數(shù)據(jù)庫 292
16.6 腳本 293
16.6.1 為數(shù)據(jù)庫生成腳本 294
16.6.2 為數(shù)據(jù)表生成腳本 297
16.6.3 執(zhí)行腳本 298
16.7 數(shù)據(jù)庫維護計劃 299
16.8 小結(jié) 303
項目篇
第 17章 學(xué)生成績管理系統(tǒng)(Java+SQL Server實現(xiàn))
17.1.系統(tǒng)概述 306
17.2.系統(tǒng)分析 307
17.2.1.需求分析 307
17.2.2.可行性研究 307
17.3.系統(tǒng)設(shè)計 307
17.3.1.系統(tǒng)目標(biāo) 307
17.3.2.系統(tǒng)功能結(jié)構(gòu) 307
17.3.3.系統(tǒng)預(yù)覽 308
17.3.4.構(gòu)建開發(fā)環(huán)境 310
17.3.5.文件夾組織結(jié)構(gòu) 310
17.4.數(shù)據(jù)庫設(shè)計 311
17.4.1.數(shù)據(jù)庫分析 311
17.4.2.數(shù)據(jù)庫概念設(shè)計 311
17.4.3.數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計 312
17.5 公共模塊設(shè)計 314
17.5.1 各種實體類的編寫 314
17.5.2 數(shù)據(jù)庫公共類的編寫 315
17.6.系統(tǒng)登錄模塊設(shè)計 322
17.6.1.系統(tǒng)登錄模塊概述 322
17.6.2.系統(tǒng)登錄模塊的技術(shù)分析 322
17.6.3.系統(tǒng)登錄模塊的實現(xiàn)過程 322
17.7.主窗體模塊設(shè)計 325
17.7.1.主窗體模塊概述 325
17.7.2.主窗體模塊的技術(shù)分析 325
17.7.3.主窗體模塊的實現(xiàn)過程 326
17.8.班級信息設(shè)置模塊設(shè)計 329
17.8.1.班級信息設(shè)置模塊概述 329
17.8.2.班級信息設(shè)置模塊的技術(shù)分析 330
17.8.3.班級信息設(shè)置模塊的實現(xiàn)過程 330
17.9.學(xué)生基本信息管理模塊設(shè)計 334
17.9.1.學(xué)生基本信息管理模塊概述 334
17.9.2.學(xué)生基本信息管理模塊的技術(shù)分析 335
17.9.3.學(xué)生基本信息管理模塊的實現(xiàn)過程 335
17.10.學(xué)生考試成績信息管理模塊設(shè)計 340
17.10.1.學(xué)生考試成績信息管理模塊概述 340
17.10.2.學(xué)生考試成績信息管理模塊的技術(shù)分析 341
17.10.3.學(xué)生考試成績信息管理模塊的實現(xiàn)過程 341
17.11.基本信息數(shù)據(jù)查詢模塊設(shè)計 345
17.11.1.基本信息數(shù)據(jù)查詢模塊概述 345
17.11.2.基本信息數(shù)據(jù)查詢模塊的技術(shù)分析 346
17.11.3.基本信息數(shù)據(jù)查詢模塊的實現(xiàn)過程 346
17.12.考試成績班級明細數(shù)據(jù)查詢模塊設(shè)計 349
17.12.1.考試成績班級明細數(shù)據(jù)查詢模塊概述 349
17.12.2.考試成績班級明細數(shù)據(jù)查詢模塊的技術(shù)分析 349
17.12.3.考試成績班級明細數(shù)據(jù)查詢模塊的實現(xiàn)過程 350
17.13.小結(jié) 352