圖書簡介
本書從初學者的角度出發,由淺入深、循序漸進地講解了SQLServer2008資料庫開發的實用技術。主要內容包括資料庫的基本概念和基礎理論、SQLServer2008的安裝和配置、資料庫與數據表的創建和管理、SQL資料庫查詢、T-SQL語言、視圖和索引、游標、事務和鎖、存儲過程和觸發器、數據完整性、資料庫安全管理、資料庫備份和還原等內容。最後通過酒店管理系統資料庫的開發,讓讀者體驗解決實際問題的過程,從而獲取SQLServer2008的編程經驗。
本書圖文並茂,條理清晰,通俗易懂,內容豐富,在講解每個知識點時都配有相應的實例,方便讀者上機實踐。此外,本書配有大量綜合實例和練習,讓讀者在實際操作中更加牢固地掌握書中講解的內容。
本書可作為高等院校計算機及相關專業資料庫技術與套用課程的教材,也可作為SQLServer初學者的自學參考書。
圖書目錄
第1章 資料庫基礎知識 1
1.1 資料庫基本概念 1
1.1.1 資料庫技術概述 1
1.1.2 資料庫相關概念 2
1.1.3 資料庫模型 3
1.2 關係型資料庫 6
1.2.1 關係型資料庫發展歷程 6
1.2.2 關係型資料庫術語 7
1.2.3 關係型資料庫管理系統的功能 8
1.2.4 關係模型完整性規則 8
1.3 資料庫基礎理論 9
1.3.1 範式 9
1.3.2 實體模型 11
1.4 資料庫開發和套用開發 13
1.4.1 資料庫開發 13
1.4.2 資料庫套用開發 13
1.4.3 兩者的關係 14
1.5 SQL Server 2008概述 14
1.5.1 SQL Server 2008簡介 14
1.5.2 SQL Server 2008新增特性 15
1.5.3 SQL Server 2008的組成 16
1.6 SQL Server 2008的安裝和配置 17
1.6.1 準備安裝 17
1.6.2 安裝示例 18
1.6.3 配置 22
1.7 SQL Server Management Studio 24
1.8 習題 26
1.8.1 填空題 26
1.8.2 選擇題 26
1.9 上機實驗 26
實驗1 設計資料庫模型 26
實驗2 安裝SQL Server 2008 27
實驗3 使用在線上叢書 27
實驗4 管理SQL Server 2008的服務 27
實驗5 註冊SQL Server 2008伺服器 28
第2章 建立資料庫 29
2.1 資料庫存儲結構 29
2.2 資料庫對象 30
2.3 事務日誌 31
2.4 系統資料庫 31
2.5 創建資料庫 33
2.5.1 創建前應考慮的問題 33
2.5.2 在圖形界面中創建資料庫 33
2.5.3 使用命令方式創建資料庫 36
2.6 查看資料庫 38
2.6.1 在圖形界面中查看資料庫 38
2.6.2 使用命令方式查看資料庫 39
2.7 修改資料庫 40
2.7.1 在圖形界面中修改資料庫 40
2.7.2 使用命令修改資料庫 41
2.8 刪除資料庫 43
2.8.1 在圖形界面中刪除資料庫 43
2.8.2 使用命令刪除資料庫 44
2.9 移動資料庫 44
2.9.1 分離資料庫 44
2.9.2 附加資料庫 45
2.10 習題 47
2.10.1 填空題 47
2.10.2 選擇題 47
2.11 上機實驗 47
實驗1 SQL Server 2008中資料庫的創建 47
實驗2 SQL Server 2008中資料庫的修改1 48
實驗3 SQL Server 2008中資料庫的修改2 48
實驗4 SQL Server 2008中資料庫的刪除 48
實驗5 SQL Server 2008中資料庫的分離 49
第3章 表的創建 50
3.1 表的概念 50
3.2 表的設計 51
3.2.1 表的數據類型 51
3.2.2 文本和圖像數據 54
3.2.3 表結構設計 54
3.3 表的創建 56
3.3.1 在圖形界面中創建表 56
3.3.2 使用命令創建表 59
3.4 表數據的操作 61
3.4.1 添加表數據 61
3.4.2 修改表數據 62
3.4.3 刪除表數據 63
3.5 查看錶信息 63
3.5.1 查看錶數據 63
3.5.2 查看錶上的約束 64
3.5.3 查看錶間關係 64
3.6 表結構的修改 66
3.6.1 在圖形界面中修改表 66
3.6.2 使用命令修改表 68
3.7 表的刪除 69
3.7.1 在圖形界面中刪除表 70
3.7.2 使用命令刪除表 70
3.8 習題 71
3.8.1 填空題 71
3.8.2 選擇題 71
3.9 上機實驗 72
實驗1 使用命令語句創建表 72
實驗2 使用SQL Server Management Studio創建表 73
實驗3 創建表資料庫關係圖 74
實驗4 修改表結構 74
實驗5 錄入數據表記錄 74
第4章 資料庫查詢 77
4.1 SELECT基礎語法 77
4.1.1 SELECT子句 78
4.1.2 WHERE子句 80
4.1.3 GROUP BY子句 83
4.1.4 HAVING子句 85
4.1.5 ORDER BY子句 86
4.1.6 COMPUTE子句 87
4.1.7 INTO子句 87
4.2 連線查詢 88
4.2.1 內連線 89
4.2.2 外連線 90
4.2.3 交叉連線 92
4.3 子查詢 92
4.3.1 IN子查詢 93
4.3.2 EXISTS子查詢 93
4.3.3 由比較運算符引出的子查詢 94
4.4 集合查詢 95
4.4.1 使用UNION 95
4.4.2 使用UNION ALL 96
4.4.3 使用EXCEPT和
INTERSECT 96
4.5 插入數據 97
4.5.1 添加數據到一行中所有列 98
4.5.2 為某一列插入默認值 99
4.5.3 用INSERT SELECT插入
多行 100
4.6 更新數據 101
4.6.1 更新特定行數據 102
4.6.2 更新所有行數據 103
4.7 刪除數據 103
4.7.1 刪除特定行的數據 104
4.7.2 刪除整個表數據 105
4.7.3 使用TRUNCATE TABLE 105
4.8 習題 106
4.8.1 填空題 106
4.8.2 選擇題 106
4.9 上機實驗 107
實驗1練習使用基本的SELECT
語句 107
實驗2在SELECT語句中使用
WHERE子句 107
實驗3練習分組和排序查詢 107
實驗4連線多個表 108
實驗5練習套用子查詢 108
實驗6使用UPDATE語句修改
數據 108
實驗7使用DELETE語句刪除
數據 108
實驗8使用INSERT語句 109
第5章T-SQL語言 110
5.1T-SQL概述 110
5.1.1T-SQL語言的類型 110
5.1.2T-SQL語言和SQL語言 111
5.2常量和變數 112
5.2.1標識符 112
5.2.2常量 113
5.2.3變數 113
5.3運算符與表達式 117
5.3.1算術運算符 117
5.3.2賦值運算符 118
5.3.3位運算符 118
5.3.4比較運算符 118
5.3.5邏輯運算符 119
5.3.6字元串連線運算符 120
5.3.7一元運算符 120
5.3.8運算符優先權 120
5.4內置函式 121
5.4.1標量函式 121
5.4.2聚合函式 128
5.5流程控制語句 128
5.5.1BEGIN…END 128
5.5.2IF…ELSE語句 129
5.5.3WHILE語句 131
5.5.4Case語句 132
5.5.5GOTO語句 134
5.5.6WAITFOR語句 134
5.5.7RETURN語句 135
5.5.8TRY…CATCH語句 135
5.6批處理 136
5.7注釋 137
5.8習題 138
5.8.1填空題 138
5.8.2選擇題 138
5.9上機實驗 139
實驗1練習變數的使用 139
實驗2練習運算符的使用 139
實驗3練習內置函式的使用 140
實驗4練習分支和循環語句 140
實驗5練習CASE、WAITFOR、
GOTO 140
第6章資料庫完整性 141
6.1資料庫完整性的概念 141
6.1.1數據完整性的分類 141
6.1.2實現數據完整性的方法 142
6.2約束 143
6.2.1默認約束 143
6.2.2主鍵約束 145
6.2.3檢查約束 147
6.2.4唯一約束 150
6.2.5外鍵約束 153
6.2.6非空約束 155
6.2.7標識屬性 157
6.3預設 158
6.3.1預設的概念 159
6.3.2創建預設 159
6.3.3查看預設 159
6.3.4綁定和解除預設 160
6.3.5刪除預設 162
6.4規則 163
6.4.1規則的概念 163
6.4.2創建規則 163
6.4.3查看規則 164
6.4.4綁定與解除規則 165
6.4.5刪除規則 166
6.5習題 167
6.5.1填空題 167
6.5.2選擇題 167
6.6上機實驗 168
實驗1練習規則的使用 168
實驗2練習預設的使用 168
實驗3練習CHECK約束的使用 169
實驗4練習主鍵約束的使用 169
實驗5練習外鍵約束的使用 169
第7章視圖和索引 171
7.1索引 171
7.1.1索引概述 171
7.1.2索引類型 173
7.1.3索引的優缺點 175
7.2創建索引 175
7.2.1創建索引的原則 176
7.2.2使用圖形工具創建索引 176
7.2.3使用CREATEINDEX創建
索引 177
7.3修改索引 179
7.3.1使用圖形工具修改索引 179
7.3.2使用T-SQL語句修改索引 180
7.4查看索引信息 181
7.5刪除索引 183
7.5.1在SSMS中刪除索引 183
7.5.2使用T-SQL刪除索引 183
7.6視圖 183
7.6.1視圖概述 183
7.6.2視圖類型 184
7.7創建視圖 185
7.7.1創建視圖的原則 185
7.7.2使用SSMS創建視圖 186
7.7.3使用T-SQL語句創建視圖 187
7.8查看視圖信息 190
7.8.1查看視圖基本信息 190
7.8.2查看視圖文本信息 190
7.8.3查看視圖的依賴關係 191
7.9修改視圖信息 191
7.9.1通過SSMS修改視圖信息 191
7.9.2通過T-SQL修改視圖信息 192
7.10通過視圖更新數據 193
7.10.1使用INSERT插入數據 193
7.10.2使用UPDATE更新數據 194
7.10.3使用DELETE刪除數據 195
7.11刪除視圖 195
7.11.1使用SSMS刪除視圖 195
7.11.2使用T-SQL語句刪除視圖 196
7.12習題 196
7.12.1填空題 196
7.12.2選擇題 196
7.13上機實驗 197
實驗1使用圖形工具界面創建
視圖 197
實驗2使用T-SQL創建視圖 197
實驗3通過視圖運算元據 198
實驗4使用T-SQL創建索引 198
實驗5使用圖形工具界面修改索引 199
第8章游標、事務和鎖 200
8.1游標 200
8.1.1游標概述 200
8.1.2游標的類型 201
8.1.3游標的使用 202
8.2事務 209
8.2.1事務的基本概念 209
8.2.2事務的特性 211
8.2.3事務的分類 212
8.2.4事務操作的原則 217
8.3鎖 218
8.3.1鎖的粒度 218
8.3.2鎖的分類 219
8.3.3事務的隔離級別 220
8.3.4死鎖及其處理 221
8.4習題 222
8.4.1填空題 222
8.4.2選擇題 223
8.5上機實驗 223
實驗1用於插入操作的事務 223
實驗2使用可更新的游標 224
實驗3創建可滾動的游標 224
實驗4顯式事務的使用 224
實驗5創建只進游標 225
第9章存儲過程和觸發器 226
9.1存儲過程 226
9.1.1存儲過程概述 226
9.1.2存儲過程的類型 227
9.2創建存儲過程 229
9.2.1使用T-SQL創建存儲過程 229
9.2.2使用SSMS創建存儲過程 231
9.3執行存儲過程 231
9.3.1使用T-SQL語句執行存儲過程 232
9.3.2使用SSMS執行存儲過程 233
9.4存儲過程參數和返回值 234
9.4.1指定默認參數 234
9.4.2指定參數方向 235
9.4.3使用RETURN語句 236
9.5修改存儲過程 237
9.5.1在SSMS中修改存儲過程 237
9.5.2使用T-SQL語句修改存儲過程 237
9.6刪除存儲過程 238
9.6.1使用SSMS刪除存儲過程 238
9.6.2使用T-SQL語句刪除存儲過程 238
9.7觸發器 239
9.7.1觸發器概述 239
9.7.2觸發器類型 240
9.7.3inserted表和deleted表 240
9.8創建觸發器 241
9.8.1使用T-SQL語句創建觸發器 242
9.8.2使用SSMS創建觸發器 244
9.8.3INSERT觸發器 245
9.8.4UPDATE觸發器 246
9.8.5DELETE觸發器 247
9.8.6INSTEADOF觸發器 248
9.9修改觸發器 250
9.9.1使用SSMS修改觸發器 250
9.9.2使用T-SQL語句修改觸發器 250
9.10刪除觸發器 251
9.10.1使用SSMS刪除觸發器 251
9.10.2使用T-SQL語句刪除觸發器 251
9.11關閉和啟用觸發器 251
9.12習題 252
9.12.1填空題 252
9.12.2選擇題 252
9.13實驗指導 253
實驗1簡單存儲過程的使用 253
實驗2使用返回數據的存儲過程的 253
實驗3使用INSERT觸發器 254
實驗4使用列級UPDATE觸發器 254
實驗5使用INSTEADOF觸發器 254
第10章SQLServer安全管理 256
10.1SQLServer2008安全管理策略 256
10.1.1SQLServer2008的安全機制 256
10.1.2SQLServer2008登錄認證模式 257
10.1.3配置登錄認證模式 258
10.2用戶管理 260
10.2.1登錄賬戶 260
10.2.2資料庫用戶 260
10.2.3創建和管理登錄賬戶 261
10.2.4創建和管理資料庫用戶 265
10.3角色管理 267
10.3.1伺服器角色 268
10.3.2資料庫角色 270
10.4許可權管理 274
10.4.1許可權的分類 275
10.4.2許可權的操作 275
10.5習題 279
10.5.1填空題 279
10.5.2選擇題 279
10.6上機實驗 280
實驗1練習資料庫的身份驗證 280
實驗2映射資料庫用戶 280
實驗3為資料庫用戶創建角色 280
實驗4為資料庫用戶授權 281
實驗5刪除資料庫用戶和角色 281
第11章資料庫備份與恢復 282
11.1備份 282
11.1.1備份概述 282
11.1.2備份類型 283
11.2備份設備 283
11.2.1備份設備的類型 284
11.2.2創建備份設備 284
11.2.3查看和刪除備份設備 287
11.3創建資料庫備份 287
11.3.1使用SSMS備份資料庫 287
11.3.2使用BACKUP命令備份資料庫 289
11.4恢複數據庫 293
11.4.1檢查點 294
11.4.2自動恢複數據庫 294
11.4.3手動恢複數據庫 295
11.5習題 299
11.5.1填空題 299
11.5.2選擇題 299
11.6上機實驗 300
實驗1創建備份設備 300
實驗2備份完整資料庫 300
實驗3備份資料庫事務日誌 300
實驗4備份差異資料庫 301
實驗5資料庫的恢復 301
第12章資料庫套用開發實例——酒店管理系統 302
12.1系統需求分析 302
12.2系統模組設計 303
12.3設計系統E-R圖 305
12.4創建系統資料庫 307
12.5創建數據表 307
12.6創建系統視圖 311
12.7創建系統存儲過程 312
12.8創建觸發器 315
12.9ASP.NET程式開發 316
12.9.1Web.config設定 316
12.9.2資料庫管理模組 317
12.9.3實體類數據訪問層 319
12.9.4實現房間類型管理 322
12.10系統運行演示 324
參考文獻 327