本書以SQL Server數據庫編程為主,通過大量實例介紹SQL Server程序設計的基本思想、方法和技術;重點介紹數據庫高級編程中常用的技術和對象,力圖使讀者通過數據庫編程技術解決實際應用問題,減少系統開發時對其他語言的依賴;在滿足專業要求的同時,提高操縱數據庫和使用數據庫解決問題的能力。
本書弱化數據庫基本理論,簡單介紹SQL結構化查詢語句,重點講解TSQL程序設計語言以及SQL Server高級編程。高級編程內容主要有游標,包括使用游標輸出結果集、使用游標操縱數據庫;用戶自定義函數,包括標量函數、內聯表值函數、多語句表值函數;存儲過程,包括使用各種參數的存儲過程;觸發器,包括DML觸發器、After觸發器、Instead of觸發器、DDL觸發器。
本書以SQL Server 2005為平臺,強化SQL Server數據庫編程技術,內容由易到難,講解由淺入深、循序漸進。
提供大量實例及代碼演示,方便讀者閱讀和實現。
每章配有課堂練習與課后習題,幫助讀者鞏固所學知識,提高編程能力。
每章以獨立的數據庫基礎知識及編程技術為主線開展教學活動,具有鮮明的特色。
本書可作為高等院校相關專業的教材,也可作為教輔資料,還可作為學習應用技術的參考書。
本書提供配套電子課件、課后習題的參考答案,可登錄清華大學出版社網站下載。
第1章SQL Server 2005基礎1
1.1SQL Server 2005概述1
1.1.1SQL Server 2005的體系結構1
1.1.2SQL Server 2005的特點2
1.2SQL Server 2005的安裝 3
1.2.1SQL Server 2005安裝前的準備工作3
1.2.2安裝SQL Server 20053
1.2.3SQL Server 2005安裝成功的驗證10
1.3SQL Server 2005的配置14
1.3.1配置SQL Server 2005服務器14
1.3.2注冊和連接SQL Server 2005服務器14
1.3.3關閉和啟動SQL Server 2005服務器17
1.3.4SQL Server 2005 常用工具17
習題20
第2章數據庫對象管理和數據操作22
2.1數據庫22
2.1.1數據庫的基本概念22
2.1.2數據庫的創建24
2.1.3數據庫的修改28
2.1.4數據庫的刪除29
2.1.5數據庫的分離31
2.1.6數據庫的附加32
2.2表32
2.2.1表的基本概念32
2.2.2表的數據類型33
2.2.3表的創建36◆SQL Server數據庫實用編程技術目錄2.2.4表的修改39
2.2.5表的刪除41
2.2.6表的約束42
2.2.7數據庫關系圖49
2.3表數據52
2.3.1標識規范52
2.3.2數據的添加、修改和刪除54
2.3.3數據的簡單查詢58
2.3.4連接查詢69
2.3.5子查詢73
2.3.6SELECT語句的其他用法79
2.4索引81
2.4.1索引的分類81
2.4.2索引的創建82
2.4.3索引的修改83
2.4.4索引的刪除85
2.5視圖85
2.5.1視圖的基本概念85
2.5.2視圖的創建86
2.5.3視圖的使用89
2.5.4視圖的刪除91
習題92
第3章TSQL基礎94
3.1TSQL概述94
3.1.1SQL與TSQL94
3.1.2TSQL的組成及功能94
3.2常量、數據類型和變量95
3.2.1常量 95
3.2.2數據類型97
3.2.3變量99
3.3流程控制語句103
3.3.1BEGIN…END語句塊104
3.3.2IF…ELSE語句105
3.3.3CASE語句106
3.3.4WHILE語句108
習題109
第4章游標111
4.1游標概述111
4.2游標的使用111
4.2.1聲明游標112
4.2.2打開游標113
4.2.3讀取游標113
4.2.4關閉游標114
4.2.5刪除游標114
4.3游標變量115
4.3.1游標變量的定義115
4.3.2游標變量的賦值115
4.3.3游標變量的使用116
4.4游標中的局部變量116
4.5游標全局變量117
4.5.1@@CURSOR_ROWS117
4.5.2@@FETCH_STATUS118
4.6使用游標操縱數據庫120
4.6.1游標的定義120
4.6.2游標的使用121
習題122
第5章函數124
5.1系統內置函數124
5.2用戶自定義函數131
5.3標量函數132
5.3.1標量函數的創建132
5.3.2標量函數的調用133
5.3.3標量函數的應用134
5.4內聯表值函數135
5.4.1內聯表值函數的創建135
5.4.2內聯表值函數的調用136
5.4.3內聯表值函數的應用137
5.5多語句表值函數137
5.5.1多語句表值函數的創建137
5.5.2多語句表值函數的調用140
5.5.3多語句表值函數的應用141
5.6用戶自定義函數的管理141
5.6.1使用SQL Server Management Studio Express創建用戶自定義函數141
5.6.2用戶自定義函數的修改142
5.6.3用戶自定義函數的刪除143
習題143
第6章存儲過程145
6.1存儲過程的分類145
6.1.1存儲過程的概念145
6.1.2存儲過程的類型145
6.2存儲過程的創建與執行146
6.2.1存儲過程的創建146
6.2.2存儲過程的執行147
6.3存儲過程的應用148
6.3.1無參數的存儲過程148
6.3.2帶輸入參數的存儲過程 149
6.3.3帶輸出參數的存儲過程150
6.3.4參數有默認值的存儲過程152
6.3.5游標型輸出參數的存儲過程153
6.4存儲過程的管理155
6.4.1存儲過程的修改155
6.4.2存儲過程的刪除155
6.5系統存儲過程156
6.5.1系統幫助存儲過程157
6.5.2其他系統存儲過程158
習題158
第7章觸發器160
7.1觸發器的基本概念160
7.1.1觸發器的工作原理160
7.1.2觸發器的作用160
7.1.3觸發器的種類161
7.2DML觸發器162
7.2.1DML觸發器的創建162
7.2.2DML觸發器的應用162
7.2.3inserted表和deleted表164
7.2.4Update()函數165
7.3INSTEAD OF觸發器166
7.3.1INSTEAD OF觸發器的創建167
7.3.2INSTEAD OF觸發器的應用167
7.4DDL觸發器170
7.4.1DDL觸發器的創建170
7.4.2DDL觸發器的應用171
7.5觸發器的管理172
7.5.1使用SQL Server Management Studio Express工具創建觸發器172
7.5.2觸發器的修改172
7.5.3觸發器的刪除174
7.5.4觸發器信息的查看174
7.5.5觸發器的禁用和啟用176
習題176
第8章SQL Server安全管理178
8.1SQL Server的安全機制178
8.1.1SQL Server安全相關概念178
8.1.2登錄名178
8.1.3用戶185
8.1.4角色188
8.1.5權限196
8.1.6架構202
8.2數據庫備份與還原205
8.2.1備份與還原概述205
8.2.2數據庫的備份210
8.2.3數據庫的還原219
習題227
參考文獻229