內 容 簡 介
要想學好SQL Server 2005,選擇一本適合自己的入門書是非常重要的。本書從資料庫基礎開始,循序漸進地講解了資料庫對象編程及資料庫套用系統開發,章節安排合理,由淺入深,通過生動的實例和詳細的代碼注釋,帶領讀者掌握SQL Server 2005資料庫套用的技巧。
本書共分17章,從易到難,循序漸進地介紹了SQL Server 2005資料庫的各個知識點。主要內容包括SQL Server 2005資料庫基礎、SQL Server 2005資料庫安裝及基本套用、SQL語言、函式、資料庫和表操作、數據的查詢、數據的更新、事物和鎖、索引、游標、存儲過程和自定義函式、視圖、觸發器、SQL Server 2005安全策略、圖書管理系統開發實例、BBS論壇系統開發等。
隨書所附光碟內容為本書的實例檔案和作者專門為本書錄製的全程多媒體語音教學視頻。
本書內容全面,論述翔實,適合SQL Server 2005的初學者,也可作為高等院校師生的參考書,對於SQL Server 2005的愛好者,本書也有著很高的參考價值。
前 言
關係資料庫是提高生產率的實際基礎。
——Edgar Frank Codd(關係資料庫之父)
資料庫技術是計算機科學的重要分支,已成為計算機數據管理的最新技術。Microsoft SQL Server 2005是基於客戶/伺服器模式(C/S模式)的新一代大型關係型資料庫管理系統(DBMS)。它是全面的、集成的、端到端的數據解決方案,以其易操作、強大的功能及友好的界面,受到了廣大企業用戶的青睞。
為了使讀者更好地掌握SQL Server 2005的新功能、新特性,更好地利用SQL Server 2005進行資料庫系統開發,本書將詳細、系統地介紹SQL Server 2005的基本使用方法及在基礎知識上的深入套用。
SQL Server 2005資料庫管理系統在電子商務、數據倉庫和資料庫解決方案等套用中起著重要的核心作用,為企業的數據管理提供強大的支持,對資料庫中的數據提供有效的管理,並採取有效的措施保證數據的完整性及數據的安全性。SQL Server 2005擁有功能強大、操作方便的工具,同時減少了在從移動設備到企業數據系統的多平台上創建、部署、管理及使用企業數據和分析應用程式的複雜度。
本書的特點
本書在內容上採用知識點和案例相結合的形式,將知識融入案例中,使讀者能夠從實踐中理解並鞏固知識,在實踐中提高能力。本書在敘述上力求通俗易懂,編排科學,圖文並茂,注重實用。為了方便讀者閱讀及更加清晰地理解,本書對部分理解有困難的案例做了適量的注釋分析。本書的主要特點如下:
 講解內容全面。涵蓋了SQL Server 2005的各項基礎知識,如T-SQL語言基本語法、SQL選擇語句、插入語句等,以及存儲過程、視圖、事物和鎖等高層次內容,集中篇幅深入講解這些最實用的內容。
 實例豐富。絕大部分章節以實例程式為核心,在實際套用中講解要介紹的內容,例如,事物和鎖的套用是比較重要的一個知識點,為了方便讀者理解,本書專門設計了實例,將所有知識點納入其中,讓讀者在實例中得到學習提升。
 代碼注釋豐富。對於實例代碼,提供詳細的代碼注釋,通過注釋,讀者可以了解每一句代碼的意義,無須擔心看不懂代碼。
 通俗易懂。將很多複雜的原理用通俗的話講出來,原理就簡單了,方便讀者了解。
1. 清晰的體例結構
知識點介紹 準確、清晰是其顯著特點,一般放在每一節開始位置,讓零基礎的讀者了解相關概念,順利入門。
實例 書中出現的完整實例,以章節順序編號,便於檢索和循序漸進地學習、實踐,放在每節知識點介紹之後。
實例代碼 與實例編號對應,層次清楚、語句簡潔、注釋豐富,體現了代碼優美的原則,有利於讀者養成良好的代碼編寫習慣。對於大段程式,均在每行代碼前設定編號便於學習。
運行結果 對實例給出運行結果和對應圖示,幫助讀者更直觀地理解實例代碼。
貼心的提示 為了便於讀者閱讀,全書還穿插著一些提示、注意等小貼士,體例約定如下:
提示:通常是一些貼心的提醒,讓讀者加深印象或提供建議,或者解決問題的方法。
注意:提出學習過程中需要特別注意的一些知識點和內容。
習題 每章最後提供專門的測試習題,供讀者檢驗所學知識是否牢固掌握,題目的提示或答案放在光碟中。
經作者多年的培訓和授課證明,以上講解方式是最適合初學者學習的方式,讀者按照這種方式,會非常輕鬆、順利地掌握本書知識。
2.實用超值的DVD光碟
為了幫助讀者比較直觀地學習,本書附贈DVD光碟,內容包括多媒體視頻、電子教案(PPT)和實例原始碼等。
 多媒體視頻
配有長達23小時手把手教學視頻,講解關鍵知識點界面操作和書中的一些綜合練習題。作者親自配音、演示,手把手教會讀者使用。
 電子教案(PPT)
本書可以作為高校相關課程的教材或課外輔導書,所以筆者特別為本書製作了電子教案(PPT),以方便老師教學使用。
3.提供完善的技術支持
本書提供了論壇讀者可以在上面提問交流。另外,論壇上還有一些小的教程、視頻動畫和各種技術文章,可幫助讀者提高開發水平。
4.豐富的額外素材下載
相關的開發素材檔案提供下載。
適合閱讀本書的讀者
SQL Server開發自學者;
軟體開發人員;
高等院校相關專業的學生。
本書作者
本書由山西忻州職業技術學院的周瑞主筆編寫。其他參與本書編寫的人員有昊燃、劉永純、曾光、張雙、朱照華、黃永湛、孟祥嵩、張賀軍、李勇、關濤、王岩、李曉白、魏星、劉蕾等,在此一併表示感謝!
編著者
目 錄
目 錄
第1篇 資料庫入門
第1章 SQL Server 2005資料庫基礎(教學視頻:34分鐘) 15
1.1 資料庫的世界 15
1.1.1 信息 16
1.1.2 數據 16
1.1.3 數據管理 16
1.1.4 資料庫管理系統 16
1.1.5 資料庫系統 17
1.2 資料庫的成長曆程 17
1.2.1 人工管理階段 17
1.2.2 檔案系統階段 18
1.2.3 資料庫系統階段 19
1.2.4 資料庫發展歷程和研究方向 19
1.3 資料庫套用系統的開發步驟 20
1.3.1 項目規劃期 21
1.3.2 項目開發時期 21
1.4 本章小結 22
1.5 習題 23
第2章 初識SQL Server 2005(教學視頻:58分鐘) 24
2.1 SQL Server 2005的組成 24
2.1.1 SQL Server資料庫引擎 24
2.1.2 分析服務(Analysis Services) 25
2.1.3 集成服務(Integration Services) 25
2.1.4 報表服務(reporting services) 25
2.2 為什麼選擇SQL Server 2005 26
2.3 如何選擇SQL Server 2005的版本 27
2.3.1 SQL Server 2005企業版 27
2.3.2 SQL Server 2005標準版 27
2.3.3 SQL Server 2005工作組版 28
2.3.4 SQL Server 2005開發版 28
2.3.5 SQL Server 2005學習版 28
2.4 SQL Server 2005的安裝與配置 28
2.4.1 SQL Server 2005 的安裝 28
2.4.2 SQL Server 2005 的配置 32
2.5 了解SSMS基本操作 36
2.5.1 SSMS的啟動與連線 36
2.5.2 使用模板資源管理器、解決方案與項目腳本 37
2.5.3 配置SQL Server伺服器的屬性 39
2.5.4 查詢編輯器 43
2.6 小結 44
2.7 習題 44
第2篇 SQL Server基礎篇
第3章 管理SQL Server 2005的工具——SQL語言(教學視頻:62分鐘) 45
3.1 SQL語言簡介 45
3.1.1 SQL語言的主要特點 45
3.1.2 如何分類SQL語言 46
3.1.3 SQL語法簡介 48
3.1.4 如何給標識符起名 48
3.2 數據類型大家族 50
3.2.1 SQL Server 數據類型概述 50
3.2.2 系統數據類型 51
3.2.3 自定義數據類型 56
3.3 變數 58
3.3.1 批和腳本 58
3.3.2 局部變數 60
3.3.3 全局變數 60
3.4 SQL的佐料——運算符 62
3.4.1 算術運算符 62
3.4.2 比較運算符 62
3.4.3 邏輯運算符 63
3.4.4 連線運算符 64
3.4.5 按位運算符 64
3.4.6 運算符的優先權 65
3.5 認識表達式 65
3.5.1 什麼是表達式 65
3.5.2 SQL表達式的分類 65
3.6 SQL利器——通配符 67
3.7 SQL語言中的注釋 67
3.8 小結 67
3.9 習題 68
第4章 走進SQL語句的世界(教學視頻:87分鐘) 69
4.1 數據定義語句(DDL) 69
4.1.1 CREATE的套用 69
4.1.2 DROP的功能 71
4.1.3 ALTER的功能 72
4.2 數據操作語句(DML) 73
4.2.1 數據的插入——INSERT 73
4.2.2 數據的刪除——DELETE 74
4.2.3 數據的更改——UPDATE 75
4.2.4 數據的查詢——SELECT 76
4.3 數據控制語句(DCL) 82
4.3.1 如何給用戶授予許可權——GRANT 82
4.3.2 拒絕許可權操作——DENY 82
4.3.3 收回許可權操作——REVOKE 83
4.4 其他基本語句 83
4.4.1 數據聲明——DECLARE 83
4.4.2 數據賦值——SET 84
4.4.3 數據輸出——PRINT 84
4.5 循環控制語句 84
4.5.1 語句塊BEGIN…END 85
4.5.2 GOTO語句 85
4.5.3 IF…ELSE語句 85
4.5.4 CASE語句 86
4.5.5 WHILE循環語句 87
4.5.6 WAITFOR語句 88
4.5.7 RETURN語句 88
4.6 批處理語句 89
4.7 小結 90
4.8 習題 91
第5章 輕輕鬆鬆認識函式(教學視頻:62分鐘) 92
5.1 數學函式 92
5.2 字元串函式 93
5.2.1 ASCII函式 94
5.2.2 CHAR函式 94
5.2.3CHARINDEX函式 95
5.2.4LEFT函式95
5.2.5right函式95
5.2.6LEN函式96
5.2.7ltrim函式 96
5.2.8 RTRIM函式 96
5.2.9LOWER函式96
5.2.10UPPER函式97
5.2.11patindex函式 97
5.2.12Repalce函式 97
5.2.13 REVERSE函式 98
5.2.14str函式98
5.2.15substring函式 98
5.3 日期和時間函式 98
5.3.1DateAdd函式 99
5.3.2 DATENAME函式 99
5.3.3DatePart函式 99
5.3.4DAY函式100
5.3.5Month函式100
5.3.6YEAR函式100
5.3.7 GETDATE函式 100
5.4 數據類型轉換函式 101
5.4.1 CAST函式 101
5.4.2 CONVERT函式 101
5.5 聚合函式 101
5.5.1Avg函式102
5.5.2COUNT函式102
5.5.3MAX函式103
5.5.4 MIN函式 103
5.5.5 SUM函式 103
5.6 系統函式 103
5.6.1 SERVERPROPERTY函式 104
5.6.2 DATABASEPROPERTY函式 105
5.6.3 TYPEOFPROPERTY函式 105
5.6.4 OBJECT_ID函式 105
5.7 文本和圖像函式 105
5.7.1 TEXTPTR函式 105
5.7.2 TEXTVALID函式 106
5.8 小結 106
5.9 習題 106
第6章 實戰開始——資料庫和表的操作(教學視頻:88分鐘) 107
6.1 深入淺出了解資料庫 107
6.1.1 資料庫 107
6.1.2 資料庫的建立 109
6.1.3 資料庫的修改 114
6.1.4 資料庫的刪除 115
6.1.5 關於資料庫的其他操作 116
6.2 如何設計表 123
6.2.1 資料庫表簡介 124
6.2.2 如何設計表 124
6.2.3 表的建立 126
6.2.4 表的修改 129
6.2.5 表的刪除 130
6.3 數據完整性 131
6.3.1 數據完整性分類 131
6.3.2 規則的創建與管理 132
6.3.3 約束 134
6.4 小結 135
6.5 習題 136
第7章 數據的查詢(教學視頻:72分鐘) 137
7.1 SELECT語句的語法結構 137
7.2 基本SELECT查詢 138
7.2.1 查詢表中所有的列 138
7.2.2 查詢表中指定列的信息 138
7.2.3 在查詢列表中使用列表達式 139
7.2.4 重新命名結果列名 140
7.2.5 說明列的定義 140
7.2.6 取得查詢結果的部分行集 141
7.3 基於條件的查詢 142
7.3.1 使用關係表達式表示查詢條件 142
7.3.2 使用邏輯表達式表示查詢條件 143
7.3.3 使用LIKE關鍵字進行模糊查詢 144
7.3.4 使用BETWEEN…AND關鍵字表示查詢條件 145
7.3.5 IN關鍵字表示查詢條件 145
7.3.6 NULL關鍵字的使用 146
7.4 對查詢結果排序輸出 147
7.5 查詢結果的新建表存儲 147
7.6 聚合函式在查詢中的使用 148
7.6.1 SUM函式 148
7.6.2 AVG函式 148
7.6.3 MAX函式 149
7.6.4 MIN函式 149
7.6.5 COUNT和COUNT(*)函式 149
7.7 查詢結果的匯總 150
7.8 多表連線查詢 151
7.8.1 內連線 152
7.8.2 外連線 152
7.8.3 交叉連線(CROSS JOIN) 154
7.8.4 自連線 154
7.9 嵌套查詢 154
7.9.1 子查詢作為新增列 154
7.9.2 使用IN關鍵字進行子查詢 155
7.9.3 使用比較運算符 155
7.9.4 使用BETWEEN關鍵字 156
7.9.5 EXISTS關鍵字的套用 156
7.9.6 子查詢與數據更新 157
7.10 小結 157
7.11 習題 157
第3篇 進階篇
第8章 數據的更新(教學視頻:32分鐘) 158
8.1 插入——INSERT 158
8.1.1 插入單行數據 159
8.1.2 插入多行數據 160
8.1.3 技術提升 160
8.2 修改——UPDATE 161
8.2.1 修改單行數據 162
8.2.2 修改多行數據 162
8.2.3 技術提升 163
8.3 刪除數據——DELETE 164
8.3.1 刪除部分數據 164
8.3.2 刪除表中所有數據 165
8.4 小結 165
8.5 習題 166
第9章 事務和鎖(教學視頻:63分鐘) 167
9.1 事務管理 167
9.1.1 事務的原理 167
9.1.2 事務管理的常用語句 169
9.1.3 事務恢復和檢查點機制 169
9.1.4 事務的類型 170
9.1.5 事務的套用案例 171
9.2 鎖 174
9.2.1 鎖的內涵與作用 174
9.2.2 可鎖定資源與鎖的類型 175
9.2.3 死鎖 177
9.2.4 鎖的套用案例 180
9.3 小結 182
9.4 習題 182
第10章 索引(教學視頻:19分鐘) 183
10.1 索引初探 183
10.1.1 索引的概念 183
10.1.2 索引的分類 184
10.2 索引的創建與管理 185
10.2.1 索引的創建 185
10.2.2 如何構建最佳化索引 188
10.2.3 索引的管理 188
10.3 小結 190
10.4 習題 190
第11章 游標(教學視頻:51分鐘) 191
11.1 認識游標 191
11.1.1 游標的定義 191
11.1.2 游標的分類 192
11.2 游標的操作 193
11.2.1 聲明游標與打開游標 193
11.2.2 從游標中讀取數據 195
11.2.3 關閉游標和釋放游標 197
11.2.4 游標變數的創建及如何使用游標修改數據 198
11.3 小結 203
11.4 習題 203
第12章 存儲過程與自定義函式(教學視頻:55分鐘) 204
12.1 存儲過程 204
12.1.1 存儲過程的概念 204
12.1.2 存儲過程的優缺點 205
12.1.3 存儲過程的類型 206
12.1.4 存儲過程與視圖的比較 206
12.2 創建和執行存儲過程 207
12.2.1 創建存儲過程 207
12.2.2 執行存儲過程 210
12.2.3 帶輸入參數的存儲過程 212
12.2.4 帶輸出參數的存儲過程 213
12.2.5 綜合實例 215
12.3 存儲過程的有關操作 219
12.3.1 修改存儲過程 219
12.3.2 查看存儲過程 221
12.3.3 重命名存儲過程 222
12.3.4 刪除存儲過程 223
12.4 系統存儲過程與擴展存儲過程 224
12.4.1 系統存儲過程 224
12.4.2 擴展存儲過程 226
12.5 用戶自定義函式 226
12.6 小結 228
12.7 習題 228
第13章 視圖(教學視頻:33分鐘) 229
13.1 視圖的定義及其重要功能 229
13.1.1 視圖的定義 229
13.1.2 視圖的功能和優點 229
13.2 視圖的具體操作 230
13.2.1 視圖的語法 230
13.2.2 視圖的修改 234
13.2.3 視圖的刪除 235
13.2.4 通過視圖向表中插入數據 235
13.2.5 通過視圖修改表中數據 236
13.3 索引視圖 237
13.3.1 索引視圖的概念及其使用範圍 237
13.3.2 索引視圖的設計方針 238
13.3.3 索引視圖設計注意事項 238
13.4 小結 239
13.5 習題 239
第4篇 SQL Server套用篇
第14章 觸發器(教學視頻:53分鐘) 240
14.1 觸發器的概念 240
14.1.1 觸發器的作用 240
14.1.2 觸發器中的兩個專用表 241
14.2 觸發器的分類 242
14.2.1 DML觸發器 242
14.2.2 DDL觸發器 243
14.3 DML觸發器的創建與管理 243
14.3.1 設計DML觸發器的注意事項和技巧 243
14.3.2 創建After觸發器 244
14.3.3 創建Instead Of 觸發器 248
14.3.4 如何使用DML觸發器 249
14.3.5 DML觸發器的管理 252
14.4 DDL觸發器的創建與管理 256
14.4.1 DDL觸發器的創建 256
14.4.2 DDL觸發器的使用 257
14.4.3 DDL觸發器管理 258
14.5 小結 259
14.6 習題 259
第15章 了解SQL Server 2005中的安全策略(教學視頻:22分鐘) 260
15.1 SQL Server安全性概述 260
15.1.1 理解SQL Server 2005的安全機制 260
15.1.2 安全性方面一些基本術語的理解 261
15.2 SQL Server 2005的登錄管理 267
15.2.1 理解SQL Server 2005的登錄機制 267
15.2.2 登錄到SQL Server 2005 267
15.2.3 設定SQL Server 2005的身份驗證方式和sa賬戶 268
15.2.4 SQL Server 2005的登錄名管理 270
15.3 SQL Server 2005的架構管理 273
15.4 SQL Server 2005的角色和用戶管理 275
15.4.1 固定伺服器角色 276
15.4.2資料庫角色276
15.4.3 應用程式角色 278
15.5 小結 280
15.6 習題 280
第5篇 案例實戰篇
第16章 圖書管理系統開發實例(教學視頻:51分鐘) 281
16.1 Java語言在系統開發中的地位 281
16.1.1 Java的特點 281
16.1.2 Java訪問資料庫技術 282
16.1.3 JDBC 283
16.1.4 DAO模式 286
16.2 圖書館管理系統需求分析及系統設計 287
16.2.1 系統登錄 288
16.2.2 基本數據維護 288
16.2.3 新書訂購管理 292
16.2.4 圖書借閱管理 294
16.2.5 系統維護模組 296
16.3 小結 298
第17章 BBS論壇系統開發(教學視頻:29分鐘) 299
17.1 系統設計 299
17.1.1 BBS論壇概述 299
17.1.2 系統功能模組 299
17.2 資料庫設計 300
17.2.1 資料庫分析和設計 300
17.2.2 創建數據表 300
17.3 連線資料庫 302
17.4 前台功能設計 303
17.4.1 註冊與登錄模組 303
17.4.2 版塊列表模組 305
17.4.3 主題帖列表 307
17.4.4 發帖與回帖模組 310
17.5 後台功能設計 312
17.5.1 添加用戶模組312
17.5.2 用戶管理模組 314
17.6 小結 317
詞條圖冊更多圖冊