SQL Server從入門到精通(第3版)

《SQL Server從入門到精通(第3版)》是清華大學出版社出版的一本圖書。

圖書內容,目錄,

圖書內容

《SQL Server從入門到精通(第3版)》從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例,詳細介紹了SQL Server開發應該掌握的各方面技術。全書分為4篇共20章,包括資料庫基礎、SQL Server資料庫環境搭建、SQL Server服務的啟動與註冊、創建與管理資料庫、運算元據表、SQL基礎、SQL函式的使用、SQL數據查詢基礎、SQL數據高級查詢、視圖的使用、存儲過程、觸發器、游標的使用、索引與數據完整性、SQL中的事務、維護SQL Server資料庫、資料庫的安全機制、Visual C++ + SQL Server實現酒店客房管理系統、C# + SQL Server實現企業人事管理系統、Java + SQL Server實現學生成績管理系統等。

目錄

第1篇基礎知識
第1章資料庫基礎2
視頻講解:34分鐘
1.1資料庫系統簡介3
1.1.1資料庫技術的發展3
1.1.2資料庫系統的組成3
1.2資料庫的體系結構4
1.2.1資料庫三級模式結構4
1.2.2三級模式之間的映射5
1.3數據模型5
1.3.1數據模型的概念6
1.3.2常見的數據模型6
1.3.3關係資料庫的規範化7
1.3.4關係資料庫的設計原則8
1.3.5實體與關係8
1.4常見關係資料庫8
1.4.1Access資料庫8
1.4.2SQLServer資料庫9
1.4.3Oracle資料庫9
1.4.4MySQL資料庫9
1.5小結9
1.6實踐與練習10
第2章SQLServer資料庫環境搭建11
視頻講解:27分鐘
2.1SQLServer資料庫簡介12
2.2SQLServer2017的安裝與卸載12
2.2.1SQLServer2017安裝必備12
2.2.2下載SQLServer2017安裝引導檔案12
2.2.3下載SQLServer2017安裝檔案13
2.2.4安裝SQLServer2017資料庫15
2.2.5安裝SQLServerManagementStudio管理工具24
2.2.6啟動SQLServer管理工具25
2.2.7SQLServer2017的卸載26
2.3小結27
第3章SQLServer服務的啟動與註冊28
視頻講解:12分鐘
3.1SQLServer資料庫服務29
3.2啟動SQLServer服務29
3.2.1通過後台啟動服務29
3.2.2通過配置管理器啟動服務30
3.3註冊SQLServer伺服器30
3.3.1創建與刪除伺服器組30
3.3.2註冊與刪除伺服器32
3.4小結34
3.5實踐與練習34
第4章創建與管理資料庫35
視頻講解:24分鐘
4.1認識資料庫36
4.1.1資料庫基本概念36
4.1.2資料庫常用對象37
4.1.3資料庫組成37
4.1.4系統資料庫38
4.2SQLServer的命名規則39
4.2.1標識符39
4.2.2對象命名規則40
4.2.3實例命名規則41
4.3資料庫的創建與管理41
4.3.1創建資料庫41
4.3.2修改資料庫45
4.3.3刪除資料庫48
4.4小結50
4.5實踐與練習50
第5章運算元據表51
視頻講解:1小時17分鐘
5.1數據表基礎52
5.1.1基本數據類型52
5.1.2用戶自定義數據類型53
5.1.3數據表的數據完整性54
5.2數據表的創建與管理55
5.2.1以界面方式運算元據表56
5.2.2使用CREATETABLE語句創建表57
5.2.3使用ALTERTABLE語句修改表結構60
5.2.4 使用DROP TABLE語句刪除表 62
5.3 管理數據 62
5.3.1 使用INSERT語句添加數據 62
5.3.2 使用UPDATE語句修改數據 63
5.3.3 使用DELETE語句刪除數據 64
5.4 創建、刪除和修改約束 64
5.4.1 非空約束 65
5.4.2 主鍵約束 65
5.4.3 唯一約束 67
5.4.4 檢查約束 68
5.4.5 默認約束 69
5.4.6 外鍵約束 71
5.5 關係的創建與維護 72
5.5.1 一對一關係 73
5.5.2 一對多關係 74
5.5.3 多對多關係 75
5.6 小結 75
5.7 實踐與練習 75
第2篇 核 心 技 術
第6章 SQL基礎 78
視頻講解:51分鐘
6.1 T-SQL概述 79
6.1.1 T-SQL的組成 79
6.1.2 T-SQL語句結構 79
6.1.3 T-SQL語句分類 80
6.2 常量 80
6.2.1 數字常量 80
6.2.2 字元串常量 81
6.2.3 日期和時間常量 81
6.2.4 符號常量 81
6.3 變數 81
6.3.1 局部變數 82
6.3.2 全局變數 83
6.4 注釋符、運算符與通配符 84
6.4.1 注釋符 85
6.4.2 運算符 85
6.4.3 通配符 88
6.5 流程控制 89
6.5.1 BEGIN...END 89
6.5.2 IF 90
6.5.3 IF…ELSE 91
6.5.4 CASE 92
6.5.5 WHILE 94
6.5.6 WHILE…CONTINUE…BREAK 94
6.5.7 RETURN 95
6.5.8 GOTO 96
6.5.9 WAITFOR 97
6.6 常用命令 97
6.6.1 DBCC 98
6.6.2 CHECKPOINT 99
6.6.3 DECLARE 99
6.6.4 PRINT 101
6.6.5 RAISERROR 101
6.6.6 READTEXT 102
6.6.7 BACKUP 103
6.6.8 RESTORE 104
6.6.9 SELECT 105
6.6.10 SET 106
6.6.11 SHUTDOWN 107
6.6.12 WRITETEXT 108
6.6.13 USE 109
6.7 小結 109
6.8 實踐與練習 110
第7章 SQL函式的使用 111
視頻講解:42分鐘
7.1 聚合函式 112
7.1.1 聚合函式概述 112
7.1.2 SUM(求和)函式 112
7.1.3 AVG(平均值)函式 113
7.1.4 MIN(最小值)函式 114
7.1.5 MAX(最大值)函式 115
7.1.6 COUNT(統計)函式 116
7.1.7 DISTINCT(取不重複記錄)函式 117
7.1.8 查詢重複記錄 117
7.2 數學函式 118
7.2.1 數學函式概述 118
7.2.2 ABS(絕對值)函式 119
7.2.3 PI(圓周率)函式 119
7.2.4 POWER(乘方)函式 120
7.2.5 RAND(隨機浮點數)函式 120
7.2.6 ROUND(四捨五入)函式 121
7.2.7 SQUARE(平方)函式和SQRT(平方根)函式 122
7.2.8 三角函式 123
7.3 字元串函式 125
7.3.1 字元串函式概述 125
7.3.2 ASCII(獲取ASCII碼)函式 125
7.3.3 CHARINDEX(返回字元串的起始位置)函式 127
7.3.4 LEFT(取左邊指定個數的字元)函式 128
7.3.5 RIGHT(取右邊指定個數的字元)函式 129
7.3.6 LEN(返回字元個數)函式 129
7.3.7 REPLACE(替換字元串)函式 130
7.3.8 REVERSE(返回字元表達式的反轉)函式 131
7.3.9 STR函式 131
7.3.10 SUBSTRING(取字元串)函式 132
7.4 日期和時間函式 133
7.4.1 日期和時間函式概述 133
7.4.2 GETDATE(返回當前系統日期和時間)函式 133
7.4.3 DAY(返回指定日期的天)函式 134
7.4.4 MONTH(返回指定日期的月)函式 134
7.4.5 YEAR(返回指定日期的年)函式 135
7.4.6 DATEDIFF(返回日期和時間的邊界數)函式 135
7.4.7 DATEADD(添加日期時間)函式 136
7.5 轉換函式 137
7.5.1 轉換函式概述 137
7.5.2 CAST函式 138
7.5.3 CONVERT函式 139
7.6 元數據函式 140
7.6.1 元數據函式概述 141
7.6.2 COL_LENGTH函式 141
7.6.3 COL_NAME函式 142
7.6.4 DB_NAME函式 143
7.7 小結 143
7.8 實踐與練習 143
第8章 SQL數據查詢基礎 144
視頻講解:47分鐘
8.1 SELECT檢索數據 145
8.1.1 SELECT語句的基本結構 145
8.1.2 WITH子句 146
8.1.3 SELECT…FROM子句 147
8.1.4 INTO子句 151
8.1.5 WHERE子句 152
8.1.6 GROUP BY子句 162
8.1.7 HAVING子句 164
8.1.8 ORDER BY子句 165
8.1.9 COMPUTE子句 166
8.1.10 DISTINCT關鍵字 168
8.1.11 TOP關鍵字 168
8.2 UNION合併多個查詢結果 169
8.2.1 UNION與連線之間的區別 169
8.2.2 使用UNION ALL合併表 170
8.2.3 UNION中的ORDER BY子句 171
8.2.4 UNION中的自動數據類型轉換 171
8.2.5 使用UNION合併不同類型的數據 172
8.2.6 使用UNION合併有不同列數的兩個表 172
8.2.7 使用UNION進行多表合併 173
8.3 小結 174
8.4 實踐與練習 174
第9章 SQL數據高級查詢 175
視頻講解:26分鐘
9.1 子查詢與嵌套查詢 176
9.1.1 子查詢概述 176
9.1.2 嵌套查詢概述 176
9.1.3 簡單的嵌套查詢 177
9.1.4 帶IN的嵌套查詢 177
9.1.5 帶NOT IN的嵌套查詢 178
9.1.6 帶SOME的嵌套查詢 179
9.1.7 帶ANY的嵌套查詢 179
9.1.8 帶ALL的嵌套查詢 180
9.1.9 帶EXISTS的嵌套查詢 180
9.2 連線查詢 181
9.2.1 內連線 181
9.2.2 外連線 182
9.2.3 交叉連線 183
9.2.4 連線多表 185
9.3 使用CASE函式進行查詢 186
9.4 小結 189
9.5 實踐與練習 189
第10章 視圖的使用 190
視頻講解:19分鐘
10.1 視圖概述 191
10.2 視圖的分類與操作 191
10.2.1 以界面方式操作視圖 191
10.2.2 使用CREATE VIEW語句創建視圖 192
10.2.3 使用ALTER VIEW語句修改視圖 195
10.2.4 使用DROP VIEW語句刪除視圖 196
10.2.5 使用存儲過程sp_rename修改視圖 197
10.3 通過視圖運算元據 197
10.3.1 從視圖中瀏覽數據 197
10.3.2 向視圖中添加數據 198
10.3.3 修改視圖中的數據 199
10.3.4 刪除視圖中的數據 199
10.4 小結 200
10.5 實踐與練習 200
第3篇 高 級 應 用
第11章 存儲過程 202
視頻講解:17分鐘
11.1 存儲過程概述 203
11.1.1 存儲過程的概念 203
11.1.2 存儲過程的優點 203
11.2 創建存儲過程 204
11.2.1 使用嚮導創建存儲過程 204
11.2.2 使用CREATE PROC語句創建存儲過程 205
11.3 管理存儲過程 206
11.3.1 執行存儲過程 206
11.3.2 查看存儲過程 208
11.3.3 修改存儲過程 209
11.3.4 重命名存儲過程 212
11.3.5 刪除存儲過程 213
11.4 小結 215
11.5 實踐與練習 215
第12章 觸發器 216
視頻講解:16分鐘
12.1 觸發器概述 217
12.1.1 觸發器的概念 217
12.1.2 觸發器的優點 217
12.1.3 觸發器的種類 217
12.2 創建觸發器 218
12.2.1 創建DML觸發器 218
12.2.2 創建DDL觸發器 220
12.2.3 創建登錄觸發器 221
12.3 管理觸發器 223
12.3.1 查看觸發器 223
12.3.2 修改觸發器 224
12.3.3 重命名觸發器 227
12.3.4 禁用和啟用觸發器 227
12.3.5 刪除觸發器 229
12.4 小結 231
12.5 實踐與練習 231
第13章 游標的使用 232
視頻講解:12分鐘
13.1 游標的概述 233
13.1.1 游標的實現 233
13.1.2 游標的類型 233
13.2 游標的基本操作 234
13.2.1 聲明游標 234
13.2.2 打開游標 237
13.2.3 讀取游標中的數據 238
13.2.4 關閉游標 240
13.2.5 釋放游標 241
13.3 使用系統過程查看游標 241
13.3.1 sp_cursor_list 242
13.3.2 sp_describe_cursor 243
13.4 小結 244
13.5 實踐與練習 245
第14章 索引與數據完整性 246
視頻講解:56分鐘
14.1 索引的概念 247
14.2 索引的優缺點 247
14.2.1 索引的優點 247
14.2.2 索引的缺點 247
14.3 索引的分類 248
14.3.1 聚集索引 248
14.3.2 非聚集索引 248
14.4 索引的操作 249
14.4.1 索引的創建 249
14.4.2 查看索引信息 252
14.4.3 索引的修改 253
14.4.4 索引的刪除 254
14.4.5 設定索引的選項 255
14.5 索引的分析與維護 258
14.5.1 索引的分析 258
14.5.2 索引的維護 259
14.6 全文索引 262
14.6.1 使用可視化管理工具啟用全文索引 262
14.6.2 使用T-SQL語句啟用全文索引 264
14.6.3 使用T-SQL語句刪除全文索引 267
14.6.4 全文目錄 267
14.6.5 全文目錄的維護 270
14.7 數據完整性 273
14.7.1 域完整性 273
14.7.2 實體完整性 274
14.7.3 引用完整性 275
14.7.4 用戶定義完整性 275
14.8 小結 276
14.9 實踐與練習 276
第15章 SQL中的事務 277
視頻講解:28分鐘
15.1 事務的概念 278
15.2 顯式事務與隱式事務 278
15.2.1 顯式事務 279
15.2.2 隱式事務 280
15.2.3 事務的COMMIT和ROLLBACK 280
15.3 使用事務 281
15.3.1 開始事務 281
15.3.2 結束事務 282
15.3.3 回滾事務 282
15.3.4 事務的工作機制 283
15.3.5 自動提交事務 284
15.3.6 事務的並發問題 284
15.3.7 事務的隔離級別 285
15.4 鎖 288
15.4.1 SQL Server鎖機制 288
15.4.2 鎖模式 288
15.4.3 鎖的粒度 290
15.4.4 查看鎖 291
15.4.5 死鎖 291
15.5 分散式事務處理 292
15.5.1 分散式事務簡介 292
15.5.2 創建分散式事務 292
15.5.3 分散式事物處理協調器 293
15.6 小結 293
15.7 實踐與練習 294
第16章 維護SQL Server資料庫 295
視頻講解:30分鐘
16.1 脫機與在線上資料庫 296
16.1.1 脫機資料庫 296
16.1.2 在線上資料庫 296
16.2 分離和附加資料庫 297
16.2.1 分離資料庫 297
16.2.2 附加資料庫 298
16.3 導入/導出數據 299
16.3.1 導入SQL Server數據表 299
16.3.2 導入其他數據源的數據 302
16.3.3 導出SQL Server數據表 304
16.4 備份和恢複數據庫 307
16.4.1 備份類型 307
16.4.2 恢復模式 307
16.4.3 備份資料庫 308
16.4.4 恢複數據庫 309
16.5 收縮資料庫和檔案 311
16.5.1 自動收縮資料庫 311
16.5.2 手動收縮資料庫 312
16.6 生成與執行SQL腳本 313
16.6.1 將資料庫生成SQL腳本 313
16.6.2 將數據表生成SQL腳本 314
16.6.3 執行SQL腳本 314
16.7 小結 315
16.8 實踐與練習 315
第17章 資料庫的安全機制 316
視頻講解:12分鐘
17.1 資料庫安全概述 317
17.2 資料庫登錄管理 317
17.2.1 選擇驗證模式 317
17.2.2 管理登錄賬號 317
17.2.3 更改登錄驗證方式 326
17.2.4 設定密碼 327
17.3 用戶及許可權管理 327
17.3.1 創建與刪除資料庫用戶 327
17.3.2 設定伺服器角色許可權 328
17.4 小結 329
17.5 實踐與練習 330
第4篇 項 目 實 戰
第18章 Visual C++ + SQL Server實現酒店客房管理系統 332
視頻講解:30分鐘
18.1 開發背景 333
18.2 需求分析 333
18.3 系統設計 333
18.3.1 系統目標 333
18.3.2 系統功能結構 334
18.3.3 系統預覽 334
18.3.4 業務流程圖 336
18.3.5 資料庫設計 336
18.4 主窗體設計 337
18.4.1 主窗體概述 337
18.4.2 主窗體實現過程 338
18.5 登錄模組設計 343
18.5.1 登錄模組概述 343
18.5.2 登錄模組技術分析 344
18.5.3 登錄模組設計過程 344
18.6 客房預訂模組設計 348
18.6.1 客房預訂模組概述 348
18.6.2 客房預訂模組技術分析 349
18.6.3 客房預訂模組實現過程 349
18.7 追加押金模組設計 353
18.7.1 追加押金模組概述 353
18.7.2 追加押金模組技術分析 354
18.7.3 追加押金模組實現過程 354
18.8 調房登記模組設計 359
18.8.1 調房登記模組概述 359
18.8.2 調房登記模組技術分析 360
18.8.3 調房登記模組實現過程 360
18.9 客房銷售報表模組設計 365
18.9.1 客房銷售報表模組概述 365
18.9.2 客房銷售報表模組技術分析 366
18.9.3 客房銷售報表模組實現過程 366
18.10 小結 375
第19章 C# + SQL Server實現企業人事管理系統 376
視頻講解:1小時25分鐘
19.1 系統概述 377
19.2 系統設計 377
19.2.1 系統目標 377
19.2.2 系統功能結構 377
19.2.3 系統業務流程圖 377
19.3 系統運行環境 379
19.4 資料庫與數據表設計 379
19.4.1 資料庫分析 379
19.4.2 主要數據表結構 379
19.4.3 數據表邏輯關係 383
19.5 創建項目 385
19.6 公共類設計 386
19.6.1 MyMeans公共類 386
19.6.2 MyModule公共類 389
19.7 登錄模組設計 403
19.7.1 設計登錄窗體 403
19.7.2 按Enter鍵時移動滑鼠焦點 404
19.7.3 登錄功能的實現 404
19.8 系統主窗體設計 405
19.8.1 設計選單欄 406
19.8.2 設計工具列 407
19.8.3 設計導航選單 408
19.8.4 設計狀態欄 408
19.9 人事檔案管理模組設計 409
19.9.1 設計人事檔案管理窗體 410
19.9.2 添加/修改人事檔案信息 412
19.9.3 刪除人事檔案信息 414
19.9.4 單條件查詢人事檔案信息 414
19.9.5 逐條查看人事檔案信息 417
19.9.6 將人事檔案信息導出為Word文檔 418
19.9.7 將人事檔案信息導出為Excel表格 423
19.10 用戶設定模組設計 427
19.10.1 設計用戶設定窗體 427
19.10.2 添加/修改用戶信息 428
19.10.3 刪除用戶基本信息 430
19.10.4 設定用戶操作許可權 430
19.11 資料庫維護模組設計 431
19.11.1 設計資料庫維護窗體 431
19.11.2 備份資料庫 432
19.11.3 還原資料庫 432
19.12 小結 434
第20章 Java + SQL Server實現學生成績管理系統 435
視頻講解:53分鐘
20.1 系統概述 436
20.2 系統分析 436
20.2.1 需求分析 436
20.2.2 可行性研究 436
20.3 系統設計 436
20.3.1 系統目標 436
20.3.2 系統功能結構 437
20.3.3 系統預覽 437
20.3.4 構建開發環境 438
20.3.5 資料夾組織結構 438
20.4 資料庫設計 439
20.4.1 資料庫分析 439
20.4.2 資料庫概念設計 439
20.4.3 資料庫邏輯結構設計 439
20.5 公共模組設計 441
20.5.1 各種實體類的編寫 442
20.5.2 運算元據庫公共類的編寫 443
20.6 系統用戶登錄模組設計 449
20.6.1 系統用戶登錄模組概述 449
20.6.2 系統用戶登錄模組技術分析 449
20.6.3 系統登錄模組實現過程 449
20.7 主窗體模組設計 451
20.7.1 主窗體模組概述 451
20.7.2 主窗體模組技術分析 452
20.7.3 主窗體模組實現過程 452
20.8 班級信息設定模組設計 455
20.8.1 班級信息設定模組概述 455
20.8.2 班級信息設定模組技術分析 455
20.8.3 班級信息設定模組實現過程 455
20.9 學生基本信息管理模組設計 459
20.9.1 學生基本信息管理模組概述 459
20.9.2 學生基本信息管理模組技術分析 459
20.9.3 學生基本信息管理模組實現過程 459
20.10 考試成績信息管理模組設計 464
20.10.1 考試成績信息管理模組概述 464
20.10.2 考試成績管理模組技術分析 464
20.10.3 考試成績信息管理模組實現過程 465
20.11 基本信息數據查詢模組設計 469
20.11.1 基本信息數據查詢模組概述 469
20.11.2 基本信息數據查詢模組技術分析 470
20.11.3 基本信息數據查詢模組實現過程 470
20.12 考試成績班級明細查詢模組設計 473
20.12.1 考試成績班級明細查詢模組概述 473
20.12.2 考試成績班級明細查詢模組技術分析 473
20.12.3 考試成績班級明細查詢模組實現過程 473
20.13 小結 476

相關詞條

熱門詞條

聯絡我們