內容簡介
資料庫技術是目前IT行業中發展最快的領域之一,已經被廣泛套用於各種類型的數據處理系統之中。了解並掌握資料庫知識已經成為各類科技人員和管理人員的基本要求。
本書基於SQL Server 2000系統討論資料庫的原理和套用方法。全書分為3部分:第1章~第5章介紹資料庫的一般原理;第6章~第18章介紹SQL Server 2000資料庫管理方法;第19章~第21章介紹VB 6.0環境下開發SQL Server 2000資料庫套用系統的相關技術。每章都配有練習題,書中還安排了16個上機實驗題供選做。
本書內容由淺入深,循序漸進,通俗易懂,適合自學,可作為各類院校相關專業及其他培訓班的“資料庫原理與套用”或“SQL Server 2000套用系統開發”課程的教學用書,對於計算機套用人員和計算機愛好者本書也是一本實用的自學參考書。
目錄
第1章資料庫系統概述 1
1.1信息、數據和數據處理 1
1.1.1信息與數據 1
1.1.2數據處理 2
1.2數據管理技術的發展 2
1.2.1人工管理階段(20世紀50年代)
2
1.2.2檔案系統階段(20世紀60年代)
2
1.2.3資料庫系統階段(20世紀60年代
後期) 3
1.3資料庫系統的組成與結構 4
1.3.1資料庫系統的組成 4
1.3.2資料庫系統體系結構 6
1.4資料庫管理系統 9
1.4.1DBMS的主要功能 9
1.4.2DBMS的組成 10
練習題1 11
第2章數據模型 12
2.1什麼是數據模型 12
2.1.1數據的描述 13
2.1.2數據間聯繫的描述 13
2.2概念模型 13
2.2.1信息世界中的基本概念 13
2.2.2實體間的聯繫方式 15
2.2.3實體-聯繫表示法(E-R方法) 15
2.2.4怎樣設計E-R圖 17
2.3資料庫類型 19
2.3.1層次模型 19
2.3.2網狀模型 20
2.3.3關係模型 21
練習題2 23
第3章關係資料庫 24
3.1關係模型的基本概念 24
3.2關係的數學定義 25
3.3關係代數 27
3.3.1傳統的集合運算 27
3.3.2專門的關係運算 28
練習題3 30
第4章關係資料庫規範化理論 31
4.1問題的提出 31
4.2函式依賴 32
4.2.1函式依賴的定義 32
4.2.2函式依賴與屬性關係 33
4.2.3Armstrong公理 34
4.2.4閉包及其計算 35
4.3範式和規範化 36
4.3.1什麼叫範式 36
4.3.2範式的判定條件與規範化 36
4.4關係模式的分解 38
4.4.1模式分解中存在的問題 38
4.4.2無損分解的定義和性質 38
4.4.3無損分解的測試方法 39
4.4.4保持函式依賴的分解 39
練習題4 40
第5章資料庫設計 42
5.1資料庫設計概述 42
5.2需求分析 43
5.2.1需求分析的步驟 43
5.2.2需求分析的方法 45
5.3概念結構設計 48
5.3.1局部套用E-R模型設計 48
5.3.2總體概念E-R模型設計 50
5.4邏輯結構設計 52
5.5物理結構設計 54
5.6資料庫的實施和維護 54
練習題5 55
第6章SQLServer2000系統概述 57
6.1SQLServer2000系統簡介 57
6.1.1概況 57
6.1.2特性 58
6.1.3新增或增強功能 59
6.2系統需求 61
6.2.1硬體需求 61
6.2.2軟體需求 62
6.3SQLServer2000的安裝 63
6.3.1安裝SQLServer2000 63
6.3.2其他安裝方式 66
6.3.3從其他版本升級到SQLServer
2000 67
6.3.4SQLServer2000的配置選項 68
6.4客戶機/伺服器體系結構 74
6.5SQLServer伺服器的管理 76
6.5.1管理SQLServer伺服器組 76
6.5.2註冊SQLServer伺服器 77
6.6SQLServer2000的主要組件 77
6.6.1在線上叢書 78
6.6.2企業管理器 78
6.6.3伺服器網路實用工具和客戶
網路實用工具 79
6.6.4查詢分析器 80
6.6.5導入和導出數據 80
6.6.6服務管理器 80
6.6.7事件探查器 80
練習題6 81
上機實驗題1 81
第7章創建和使用資料庫 82
7.1查看資料庫 82
7.1.1查看資料庫 82
7.1.2查看關係圖 85
7.1.3查看錶的結構和內容 86
7.1.4查看視圖 88
7.1.5查看存儲過程 89
7.1.6查看用戶和角色 90
7.1.7資料庫的其他組成部分 92
7.2SQLServer資料庫和檔案 92
7.2.1檔案和檔案組 92
7.2.2資料庫存儲結構 94
7.2.3事務日誌 95
7.3創建資料庫 96
7.3.1直接建立資料庫 96
7.3.2使用嚮導建立資料庫 98
7.3.3資料庫的屬性設定 99
7.3.4資料庫大小估算和收縮資料庫
100
7.4資料庫更名 102
7.5刪除資料庫 102
練習題7 103
上機實驗題2 103
第8章創建和使用表 104
8.1建立表 104
8.2修改表的結構 106
8.3建立資料庫關係圖 107
8.4刪除表 108
8.5記錄的新增和修改 110
練習題8 111
上機實驗題3 111
第9章T-SQL 113
9.1SQL語言 113
9.1.1概述 113
9.1.2SQL語言的分類 114
9.2T-SQL基礎 115
9.2.1查詢分析器 115
9.2.2資料庫的操作語句 117
9.2.3表的操作語句 122
9.2.4數據查詢 124
9.3T-SQL程式設計基礎 140
9.3.1標識符 140
9.3.2數據類型 143
9.3.3運算符 156
9.3.4變數 161
9.3.5批處理 164
9.3.6注釋 165
9.3.7控制流語句 165
9.3.8函式 172
練習題9 175
上機實驗題4 176
第10章T-SQL高級套用 177
10.1SELECT高級查詢 177
10.1.1數據匯總 177
10.1.2聯接查詢 182
10.1.3子查詢 186
10.1.4在查詢的基礎上創建新表 191
10.2管理ntext、text和image數據 192
10.2.1檢索ntext、text或image值 193
10.2.2修改ntext、text或image值 195
10.3事務處理 197
10.3.1事務分類 198
10.3.2顯式事務 198
10.3.3自動提交事務 202
10.3.4隱式事務 203
10.4數據的鎖定 204
10.4.1並發問題 204
10.4.2事務的隔離級別 206
10.4.3SQLServer中的鎖定 207
10.4.4自定義鎖 210
10.5使用游標 215
10.5.1游標的概念 215
10.5.2使用游標 216
10.5.3游標類型 221
練習題10 222
上機實驗題5 222
第11章索引 223
11.1索引簡介 223
11.1.1創建索引的原因 223
11.1.2建立索引應該考慮的問題 224
11.2索引類型 226
11.2.1B-樹索引結構 226
11.2.2聚集索引和非聚集索引 226
11.2.3唯一索引和組合索引 230
11.3創建索引 230
11.3.1通過企業管理器創建索引 230
11.3.2通過嚮導創建索引 233
11.3.3使用SQL語言創建索引 234
11.3.4創建索引的選項設定 236
11.3.5創建索引的空間考慮 238
11.3.6在視圖和計算列上創建索引 239
11.4查看和刪除索引 239
11.4.1使用企業管理器 239
11.4.2使用SQL語言 240
練習題11 240
上機實驗題6 241
第12章視圖 242
12.1視圖概述 242
12.2創建視圖 243
12.2.1使用企業管理器創建視圖 244
12.2.2使用嚮導創建視圖 245
12.2.3使用SQL語句創建視圖 248
12.3使用視圖 249
12.3.1使用視圖進行數據檢索 249
12.3.2通過視圖修改數據 250
12.4視圖的修改 251
12.4.1修改視圖 251
12.4.2重命名視圖 252
12.5視圖信息的查詢 254
12.5.1使用企業管理器查詢視圖
信息 254
12.5.2使用sp_helptext存儲過程查詢
視圖信息 254
12.6視圖的刪除 255
12.6.1使用企業管理器刪除視圖 255
12.6.2使用T-SQL語句刪除視圖 256
練習題12 257
上機實驗題7 257
第13章資料庫完整性 258
13.1約束 258
13.1.1PRIMARYKEY約束 258
13.1.2FOREIGNKEY約束 259
13.1.3UNIQUE約束 260
13.1.4CHECK約束 261
13.1.5列約束和表約束 262
13.2默認值 263
13.2.1在創建表時指定默認值 263
13.2.2使用默認對象 264
13.3規則 268
13.3.1創建規則 268
13.3.2綁定規則 270
13.3.3解除和刪除規則 270
練習題13 271
上機實驗題8 271
第14章存儲過程 272
14.1概述 272
14.2創建存儲過程 272
14.3執行存儲過程 277
14.4存儲過程的參數 278
14.5存儲過程的查看、修改和刪除 280
練習題14 282
上機實驗題9 282
第15章觸發器 283
15.1概述 283
15.2創建觸發器 283
15.3inserted表和deleted表 288
15.4使用觸發器 289
15.5修改觸發器 291
15.6刪除觸發器 292
15.7嵌套觸發器 292
練習題15 293
上機實驗題10 293
第16章SQLServer的安全管理 294
16.1SQLServer安全體系結構 294
16.1.1作業系統的安全性 294
16.1.2SQLServer的安全性 295
16.1.3資料庫的安全性 295
16.1.4SQLServer資料庫對象的
安全性 295
16.2SQLServer的驗證模式 296
16.2.1NT驗證模式 296
16.2.2混合驗證模式 297
16.2.3NT驗證模式對SQLServer
的影響 297
16.2.4設定驗證模式 298
16.3賬號和角色 299
16.3.1伺服器的登錄賬號 299
16.3.2資料庫的用戶 301
16.3.3資料庫角色 304
16.3.4用戶和角色的許可權問題 308
練習題16 309
上機實驗題11 309
第17章數據備份與還原 310
17.1備份和還原構架 310
17.2備份資料庫 313
17.2.1備份類型和常用備份策略 313
17.2.2備份資料庫中各種對象 314
17.3資料庫還原 325
17.3.1資料庫恢復模型 325
17.3.2還原資料庫備份 327
17.3.3還原事務日誌備份 331
練習題17 332
上機實驗題12 332
第18章數據轉換 333
18.1DTS的基本概念 333
18.2數據的導入 334
18.3數據的導出 336
練習題18 340
上機實驗題13 340
第19章VB與資料庫 341
19.1概述 341
19.1.1數據訪問對象模型 341
19.1.2資料庫的分類 341
19.1.3ODBC和數據源 343
19.2常用的數據訪問控制項 345
19.2.1Data控制項 345
19.2.2ADOData控制項 350
19.2.3DataCombo控制項 355
19.2.4DataGrid控制項 357
19.3常用的高級用戶界面控制項 360
19.3.1ImageList控制項 360
19.3.2TreeView控制項 363
19.3.3ListView控制項 369
19.3.4公共對話框控制項 376
練習題19 381
上機實驗題14 381
第20章使用DAO運算元據庫 382
20.1什麼是DAO 382
20.1.1DAO運算元據庫的步驟 383
20.1.2DBEngine初始化資料庫環境 384
20.1.3打開資料庫 384
20.1.4打開數據集 385
20.2DBEngine對象 385
20.2.1DBEngine對象的屬性 385
20.2.2DBEngine對象的方法 386
20.3Workspace對象 387
20.3.1Workspace對象的屬性 387
20.3.2Workspace對象的方法 388
20.4Database對象 390
20.4.1Database對象的屬性 390
20.4.2Database對象的方法 391
20.4.3TableDef對象 392
20.4.4Recordset對象 394
20.4.5QueryDef對象 398
20.5Fields集合和Field對象 399
20.5.1Field對象的屬性 399
20.5.2Field對象的方法 400
20.5.3Fields集合的屬性 400
20.5.4Fields集合的方法 400
20.6Index對象 401
20.6.1Index對象的屬性 401
20.6.2Index對象的方法 401
20.7DAO編程實例 402
練習題20 407
上機實驗題15 407
第21章使用ADO運算元據庫 408
21.1ADO概述 408
21.2Connection對象 411
21.2.1Connection對象的屬性 413
21.2.2Connection對象的方法 414
21.2.3Connection對象的事件 416
21.3Recordset對象 418
21.3.1Recordset對象的屬性 419
21.3.2Recordset對象的方法 425
21.3.3Recordset對象的事件 436
21.4Field對象 440
21.4.1Field對象的屬性 440
21.4.2Field對象的方法 443
21.4.3Fields集合 443
21.5Command對象 447
21.5.1Command對象的屬性 448
21.5.2Command對象的方法 449
21.5.3 Parameters集合和Parameter
對象 451
21.6ADO編程綜合實例 456
練習題21 459
上機實驗題16 459
參考文獻 460