內容簡介
《SQL Server 2019資料庫教程》從SQL Server 2019的基本概念出發,由淺入深地講述了該資料庫系統的安裝過程、伺服器的配捉棵才置技術、Transact-SQL語言、系統安全才提循提機制、資料庫管理、各種資料庫對象的管理,以及索引技術、數據更新技術、數據完整性技術、數據複製技術、數據互操作性技術、性能監視和調整技術、並發性技術等內容。在講述SQL Server的各種技術時,運用了豐富的實例,注重培養學生解決問題的能力並快速掌握SQL Server的基本操作技術。
《SQL Server 2019資料庫教程》內容豐富、結構合理、思路清晰、語言簡練流暢、實例翔實。每章正文結合所講述的關鍵技術和難點,精選極富價值的示例;每章末尾都安排了有針對性的習題,以鞏固所學基本概念,培養學生的實際動手能力,增強對基本概念的理解和實際套用能力。
《SQL Server 2019資料庫教程》主要面向資料庫初學者,可作為高等院校的資料庫課程教材,也可作為資料庫培訓班的培訓教材,還可作為資料庫應用程式開發人員的參考資料。
圖書目錄
第1章 資料庫基礎 1
1.1 資料庫系統基本概念 1
1.1.1 信息 1
1.1.2 數據 1
1.1.3 數據處理 2
1.1.4 資料庫 2
1.1.5 資料庫管理系統 3
1.1.6 資料庫系統 4
1.2 數據管理技術的發展 4
1.2.1 人工管理階段 4
1.2.2 檔案系統階段 5
1.2.3 資料庫系統階段 6
1.3 數據模型 7
1.3.1 現實世界 8
1.3.2 信息世界 8
1.3.3 機器世界 10
1.4 關係資料庫 11
1.4.1 關係模型 11
1.4.2 關係資料庫的規範化理論 15
1.5 資料庫系抹灑虹慨統的體系結構 20
1.5.1 資料庫系統的三級模式結構 20
1.5.2 資料庫的二級映像與數據的盛陵項獨立性 21
1.6 資料庫系統設計簡介 22
1.6.1 需求分析階段 22
1.6.2 概念結構設計階段 22
1.6.3 邏輯結構設計階段 23
1.6.4 物理結構設計階段 23
1.6.5 資料庫實施階段 24
1.6.6 資料庫運行和維護階段 25
習題1 26
第2章 初識SQL Server 2019 31
2.1 SQL Server版本介紹 31
2.2 SQL Server 2019優勢 32
2.3 SQL Server 2019的安裝 35
2.3.1 下載SQL Server 2019 35
2.3.2 安裝SQL Server 2019 36
2.4 SQL Server 2019組件和工具 41
習題2 43
第3章 資料庫的創建與管理 45
3.1 系統資料庫 45
3.2 資料庫結構 46
3.2.1 資料庫檔案 46
3.2.2 檔案組 47
3.3 創建資料庫 48
3.4 管理資料庫 50
3.4.1 查看資料庫信息 51
3.4.2 修改資料庫 51
3.4.3 重命名資料庫 52
3.4.4 打開資料庫 53
3.4.5 分離和附加資料庫 53
3.4.6 刪除承糠拔資料庫 57
3.4.7 收縮資料庫 58
3.4.8 移動資料庫 62
習匪船題3 62
第4章 數據表的創建與管理 66
4.1 創建數據表 66
4.2 管理數據表 69
4.2.1 使用Transact-SQL語句增加、刪除和修改欄位 69
4.2.2 重命名數據表 71
4.2.3 刪除數據表 71
4.3 使用約束實現數據完整性 71
4.3.1 數據完整性定義 71
4.3.2 數據完整性類型 71
4.3.3 約束定義 72
4.3.4 約束分類 72
4.3.5 約束名 73
4.3.6 創建約束的語法格式 73
4.3.7 主鍵約束 73
4.3.8 唯一約束 75
4.3.9 外鍵約束 76
4.3.10 檢查約束 77
4.3.11 默認值約束 79
4.3.12 非空約束 80
4.3.13 使用IDENTITY列 80
4.3.14 默認值 82
4.3.15 規則 84
4.4 表的數據更新 86
4.4.1 插入記錄 86
4.4.2 修改記錄 89
4.4.3 刪除記錄 90
習題4 91
第5章 Transact-SQL語言編程良企盛基礎 95
5.1 Transact-SQL語言概論 95
5.1.1 Transact-SQL語言分類 95
5.1.2 Transact-SQL語法約定 96
5.2 數據類型 98
5.2.1 基本數據類型 98
5.2.2 用戶自定義數據類型 102
5.3 常量與變數 102
5.3.1 常量 102
5.3.2 變數 102
5.4 表達式與運算符 105
5.4.1 表達式 105
5.4.2 運算符 105
5.4.3 運算符優先權 107
5.5 常用函式 108
5.5.1 聚合函式 108
5.5.2 數學函式 110
5.5.3 字元串函式 111
5.5.4 日期和時間函式 112
5.5.5 數據類型轉換函式 113
5.5.6 元數據函式 115
5.5.7 用戶自定義函式 115
5.6 批處理與流程控制語句 119
5.6.1 批處理 119
5.6.2 流程控制語句 120
習題5 125
第6章 數據查詢 127
6.1 SELECT語句 127
6.2 簡單查詢 128
6.2.1 SELECT子句 128
6.2.2 INTO子句 130
6.2.3 FROM子句 130
6.2.4 WHERE子句 132
6.2.5 GROUP BY子句 133
6.2.6 HAVING子句 134
6.2.7 ORDER BY子句 135
6.3 使用其他子句或關鍵字查詢數據 137
6.3.1 集合查詢 137
6.3.2 檢索某一範圍內的信息 138
6.3.3 指定結果集的列的別名 142
6.4 連線查詢 142
6.4.1 連線概述 143
6.4.2 內連線 143
6.4.3 外連線 144
6.4.4 交叉連線 146
6.4.5 自連線 147
6.5 嵌套查詢 147
6.5.1 嵌套查詢的結構與組織 147
6.5.2 使用IN或NOT IN謂詞的嵌套查詢 148
6.5.3 使用比較運算符的嵌套查詢 149
6.5.4 使用ANY或ALL謂詞的嵌套查詢 150
6.5.5 使用EXISTS或NOT EXISTS謂詞的嵌套查詢 151
習題6 153
第7章 視圖和索引 157
7.1 視圖 157
7.1.1 視圖概述 157
7.1.2 創建視圖 159
7.1.3 修改視圖 161
7.1.4 使用視圖 163
7.1.5 刪除視圖 165
7.2 索引 165
7.2.1 索引概述 165
7.2.2 創建索引 168
7.2.3 管理索引 169
7.2.4 刪除索引 170
習題7 170
第8章 存儲過程和觸發器 173
8.1 存儲過程概述 173
8.1.1 存儲過程的概念 173
8.1.2 存儲過程的優點 173
8.1.3 存儲過程的分類 174
8.2 創建和執行用戶存儲過程 174
8.2.1 創建用戶存儲過程 174
8.2.2 執行用戶存儲過程 176
8.3 管理存儲過程 178
8.3.1 查看存儲過程 178
8.3.2 修改存儲過程 179
8.3.3 刪除存儲過程 180
8.4 觸發器概述 180
8.4.1 觸發器的分類 180
8.4.2 DML觸發器與約束 181
8.4.3 INSERTED表和
DELETED表 182
8.5 創建DML觸發器 182
8.6 管理DML觸發器 184
8.6.1 查看觸發器 185
8.6.2 修改觸發器 185
8.6.3 禁用或啟用觸發器 186
8.6.4 刪除觸發器 187
習題8 187
第9章 游標 190
9.1 游標概述 190
9.1.1 游標的概念 190
9.1.2 游標的分類 191
9.2 游標的使用 192
9.2.1 聲明游標 192
9.2.2 打開游標 194
9.2.3 讀取游標數據 194
9.2.4 關閉游標 198
9.2.5 獲取游標的狀態和屬性 199
9.2.6 修改游標結果集中的行 204
9.2.7 刪除游標結果集中的行 205
9.2.8 刪除游標 206
習題9 207
第10章 事務和鎖 209
10.1 事務 209
10.1.1 事務特性 209
10.1.2 管理事務 209
10.1.3 事務的注意事項 213
10.2 鎖 213
10.2.1 鎖的基礎知識 213
10.2.2 死鎖及其防止 214
10.2.3 鎖的模式 215
習題10 216
第11章 資料庫安全性管理 218
11.1 SQL Server 2019的安全
機制 218
11.2 身份驗證 219
11.2.1 身份驗證模式 219
11.2.2 創建登錄名 221
11.2.3 修改和刪除登錄名 224
11.3 用戶管理 227
11.3.1 默認用戶 228
11.3.2 創建資料庫用戶 228
11.3.3 修改和刪除資料庫用戶 229
11.4 角色管理 230
11.4.1 伺服器角色 231
11.4.2 資料庫角色 231
11.5 許可權管理 233
11.5.1 許可權管理的相關概念 233
11.5.2 許可權的類別 234
11.5.3 許可權管理的操作 236
習題11 237
第12章 維護資料庫 240
12.1 導入和導出數據 240
12.1.1 將表中數據導出到文本檔案 240
12.1.2 從文本檔案向SQL Server資料庫中導入數據 244
12.2 資料庫備份 246
12.2.1 故障概述 247
12.2.2 備份類型 248
12.2.3 創建備份設備 250
12.2.4 完整備份資料庫 250
12.3 資料庫還原 252
12.4 資料庫快照 254
12.4.1 創建資料庫快照 254
12.4.2 查看資料庫快照 255
12.4.3 恢復到資料庫快照 256
12.4.4 刪除資料庫快照 257
習題12 257
作者簡介
於曉鵬:男,漢族,教授,1964年生人。1985年畢業於哈爾濱師範大學,獲理學學士學位,同年到吉林師範大學任教,1986年在吉林大學進修,1991年在武漢大學進修,現為吉林省計算機學會常務理事。
1985年以來一直在教學一線從事專任教師工作,為本科生講授過的課程有《計算機基礎》、《計算機導論》、《算法基礎》、《資料庫套用》、《資料庫原理》、《數據結構》等。為研究生講授的課程有《高級資料庫技術》、《編碼理論》等。在《吉林大學學報》等刊物發表論文20餘篇。
於淼:男,滿族,碩士研究生,中共黨員,1990年生人。2015年在吉林師範大學計算機學院讀研,現發表sci論文2篇,在《吉林大學學報》發表論文1篇,在全國研究生大賽中獲得2等獎1項。
2.4 SQL Server 2019組件和工具 41
習題2 43
第3章 資料庫的創建與管理 45
3.1 系統資料庫 45
3.2 資料庫結構 46
3.2.1 資料庫檔案 46
3.2.2 檔案組 47
3.3 創建資料庫 48
3.4 管理資料庫 50
3.4.1 查看資料庫信息 51
3.4.2 修改資料庫 51
3.4.3 重命名資料庫 52
3.4.4 打開資料庫 53
3.4.5 分離和附加資料庫 53
3.4.6 刪除資料庫 57
3.4.7 收縮資料庫 58
3.4.8 移動資料庫 62
習題3 62
第4章 數據表的創建與管理 66
4.1 創建數據表 66
4.2 管理數據表 69
4.2.1 使用Transact-SQL語句增加、刪除和修改欄位 69
4.2.2 重命名數據表 71
4.2.3 刪除數據表 71
4.3 使用約束實現數據完整性 71
4.3.1 數據完整性定義 71
4.3.2 數據完整性類型 71
4.3.3 約束定義 72
4.3.4 約束分類 72
4.3.5 約束名 73
4.3.6 創建約束的語法格式 73
4.3.7 主鍵約束 73
4.3.8 唯一約束 75
4.3.9 外鍵約束 76
4.3.10 檢查約束 77
4.3.11 默認值約束 79
4.3.12 非空約束 80
4.3.13 使用IDENTITY列 80
4.3.14 默認值 82
4.3.15 規則 84
4.4 表的數據更新 86
4.4.1 插入記錄 86
4.4.2 修改記錄 89
4.4.3 刪除記錄 90
習題4 91
第5章 Transact-SQL語言編程基礎 95
5.1 Transact-SQL語言概論 95
5.1.1 Transact-SQL語言分類 95
5.1.2 Transact-SQL語法約定 96
5.2 數據類型 98
5.2.1 基本數據類型 98
5.2.2 用戶自定義數據類型 102
5.3 常量與變數 102
5.3.1 常量 102
5.3.2 變數 102
5.4 表達式與運算符 105
5.4.1 表達式 105
5.4.2 運算符 105
5.4.3 運算符優先權 107
5.5 常用函式 108
5.5.1 聚合函式 108
5.5.2 數學函式 110
5.5.3 字元串函式 111
5.5.4 日期和時間函式 112
5.5.5 數據類型轉換函式 113
5.5.6 元數據函式 115
5.5.7 用戶自定義函式 115
5.6 批處理與流程控制語句 119
5.6.1 批處理 119
5.6.2 流程控制語句 120
習題5 125
第6章 數據查詢 127
6.1 SELECT語句 127
6.2 簡單查詢 128
6.2.1 SELECT子句 128
6.2.2 INTO子句 130
6.2.3 FROM子句 130
6.2.4 WHERE子句 132
6.2.5 GROUP BY子句 133
6.2.6 HAVING子句 134
6.2.7 ORDER BY子句 135
6.3 使用其他子句或關鍵字查詢數據 137
6.3.1 集合查詢 137
6.3.2 檢索某一範圍內的信息 138
6.3.3 指定結果集的列的別名 142
6.4 連線查詢 142
6.4.1 連線概述 143
6.4.2 內連線 143
6.4.3 外連線 144
6.4.4 交叉連線 146
6.4.5 自連線 147
6.5 嵌套查詢 147
6.5.1 嵌套查詢的結構與組織 147
6.5.2 使用IN或NOT IN謂詞的嵌套查詢 148
6.5.3 使用比較運算符的嵌套查詢 149
6.5.4 使用ANY或ALL謂詞的嵌套查詢 150
6.5.5 使用EXISTS或NOT EXISTS謂詞的嵌套查詢 151
習題6 153
第7章 視圖和索引 157
7.1 視圖 157
7.1.1 視圖概述 157
7.1.2 創建視圖 159
7.1.3 修改視圖 161
7.1.4 使用視圖 163
7.1.5 刪除視圖 165
7.2 索引 165
7.2.1 索引概述 165
7.2.2 創建索引 168
7.2.3 管理索引 169
7.2.4 刪除索引 170
習題7 170
第8章 存儲過程和觸發器 173
8.1 存儲過程概述 173
8.1.1 存儲過程的概念 173
8.1.2 存儲過程的優點 173
8.1.3 存儲過程的分類 174
8.2 創建和執行用戶存儲過程 174
8.2.1 創建用戶存儲過程 174
8.2.2 執行用戶存儲過程 176
8.3 管理存儲過程 178
8.3.1 查看存儲過程 178
8.3.2 修改存儲過程 179
8.3.3 刪除存儲過程 180
8.4 觸發器概述 180
8.4.1 觸發器的分類 180
8.4.2 DML觸發器與約束 181
8.4.3 INSERTED表和
DELETED表 182
8.5 創建DML觸發器 182
8.6 管理DML觸發器 184
8.6.1 查看觸發器 185
8.6.2 修改觸發器 185
8.6.3 禁用或啟用觸發器 186
8.6.4 刪除觸發器 187
習題8 187
第9章 游標 190
9.1 游標概述 190
9.1.1 游標的概念 190
9.1.2 游標的分類 191
9.2 游標的使用 192
9.2.1 聲明游標 192
9.2.2 打開游標 194
9.2.3 讀取游標數據 194
9.2.4 關閉游標 198
9.2.5 獲取游標的狀態和屬性 199
9.2.6 修改游標結果集中的行 204
9.2.7 刪除游標結果集中的行 205
9.2.8 刪除游標 206
習題9 207
第10章 事務和鎖 209
10.1 事務 209
10.1.1 事務特性 209
10.1.2 管理事務 209
10.1.3 事務的注意事項 213
10.2 鎖 213
10.2.1 鎖的基礎知識 213
10.2.2 死鎖及其防止 214
10.2.3 鎖的模式 215
習題10 216
第11章 資料庫安全性管理 218
11.1 SQL Server 2019的安全
機制 218
11.2 身份驗證 219
11.2.1 身份驗證模式 219
11.2.2 創建登錄名 221
11.2.3 修改和刪除登錄名 224
11.3 用戶管理 227
11.3.1 默認用戶 228
11.3.2 創建資料庫用戶 228
11.3.3 修改和刪除資料庫用戶 229
11.4 角色管理 230
11.4.1 伺服器角色 231
11.4.2 資料庫角色 231
11.5 許可權管理 233
11.5.1 許可權管理的相關概念 233
11.5.2 許可權的類別 234
11.5.3 許可權管理的操作 236
習題11 237
第12章 維護資料庫 240
12.1 導入和導出數據 240
12.1.1 將表中數據導出到文本檔案 240
12.1.2 從文本檔案向SQL Server資料庫中導入數據 244
12.2 資料庫備份 246
12.2.1 故障概述 247
12.2.2 備份類型 248
12.2.3 創建備份設備 250
12.2.4 完整備份資料庫 250
12.3 資料庫還原 252
12.4 資料庫快照 254
12.4.1 創建資料庫快照 254
12.4.2 查看資料庫快照 255
12.4.3 恢復到資料庫快照 256
12.4.4 刪除資料庫快照 257
習題12 257
作者簡介
於曉鵬:男,漢族,教授,1964年生人。1985年畢業於哈爾濱師範大學,獲理學學士學位,同年到吉林師範大學任教,1986年在吉林大學進修,1991年在武漢大學進修,現為吉林省計算機學會常務理事。
1985年以來一直在教學一線從事專任教師工作,為本科生講授過的課程有《計算機基礎》、《計算機導論》、《算法基礎》、《資料庫套用》、《資料庫原理》、《數據結構》等。為研究生講授的課程有《高級資料庫技術》、《編碼理論》等。在《吉林大學學報》等刊物發表論文20餘篇。
於淼:男,滿族,碩士研究生,中共黨員,1990年生人。2015年在吉林師範大學計算機學院讀研,現發表sci論文2篇,在《吉林大學學報》發表論文1篇,在全國研究生大賽中獲得2等獎1項。