內容介紹
《SQL Server自學視頻教程》共分3篇15章,其中,第1篇為入門篇,主要包括資料庫基礎知識、搭建SQL Server 2012開發環境、資料庫和數據表的使用、SQL Server基礎、查詢數據表記錄、掌握資料庫視圖的使用等內容;第2篇為提高篇,主要包括為數據表創建索引、利用存儲過程批處理SQL語句、套用觸發器最佳化查詢、游標的使用、通過事務修改數據、資料庫的維護管理、資料庫的安全機制等內容;第3篇為實戰篇,主要包括企業人事管理系統、企業進銷存管理系統兩個實戰項目。另外本書光碟含:
12小時視頻講解/3247個編程實例/15個經典模組分析/15個項目開發案例/701個編程實踐任務/596個能力測試題目(基礎能力測試、數學及邏輯思維能力測試、面試能力測試、編程英語能力測試)/23個IT勵志故事。
目 錄
本書光碟"自主學習系統"內容索引...XI
第1篇 入 門 篇
第1章 資料庫基礎知識 2
( 視頻講解:25分鐘)
1.1 資料庫系統概述 3
1.1.1 組成資料庫系統的主要部分 3
1.1.2 追溯資料庫技術的發展史 3
1.2 抽象數據模型 4
1.2.1 認識數據模型 4
1.2.2 常見的數據模型 4
1.2.3 規範化關係資料庫 6
1.2.4 設計關係資料庫 6
1.2.5 實體間的關係 6
1.3 資料庫的體系結構 7
1.3.1 資料庫三級模式結構 7
1.3.2 三級模式之間的映射 8
1.4 介紹幾種關係資料庫 8
1.4.1 Access資料庫 8
1.4.2 SQL Server 2005資料庫 9
1.4.3 SQL Server 2008資料庫 9
1.4.4 SQL Server 2012資料庫 9
1.4.5 Oracle資料庫 10
1.5 本章小結 10
第2章 搭建SQL Server 2012開發環境 11
( 視頻講解:34分鐘)
2.1 簡述SQL Server 2012 12
2.1.1 SQL Server 2012的概貌 12
2.1.2 SQL Server 2012的特性 12
2.2 SQL Server 2012開發環境 13
2.2.1 為SQL Server 2012配置安裝環境 13
2.2.2 安裝SQL Server 2012 14
2.2.3 卸載SQL Server 2012 23
2.3 啟動SQL Server 2012服務 24
2.3.1 後台啟動服務 24
2.3.2 通過配置管理器啟動 25
2.4 註冊SQL Server 2012伺服器 26
2.4.1 創建與刪除伺服器組 26
2.4.2 註冊與刪除伺服器 28
2.5 本章小結 30
第3章 資料庫和數據表的使用 31
( 視頻講解:1小時42分鐘)
3.1 資料庫概述 32
3.1.1 幾個資料庫相關概念 32
3.1.2 常用資料庫對象 33
3.1.3 資料庫組成部分 33
3.1.4 4個系統資料庫 34
3.2 規範化SQL Server的命名 35
3.2.1 標識符命名規則 35
3.2.2 對象命名規則 36
3.2.3 實例命名規則 37
3.3 資料庫相關操作 37
3.3.1 創建資料庫 37
3.3.2 修改資料庫 41
3.3.3 刪除資料庫 44
3.4 使用數據表 46
3.4.1 以界面方式運算元據表 47
3.4.2 使用CREATE TABLE語句創建表 48
3.4.3 創建、修改和刪除約束 51
3.4.4 使用ALTER TABLE語句修改表結構 59
3.4.5 使用DROP TABLE語句刪除表 61
3.5 管理數據 61
3.5.1 使用INSERT語句添加數據 62
3.5.2 使用UPDATE語句修改數據 62
3.5.3 使用DELETE語句刪除數據 64
3.6 建立表間對應關係 64
3.6.1 一對一關係 65
3.6.2 一對多關係 66
3.6.3 多對多關係 67
3.7 綜合套用 67
3.7.1 批量插入數據 67
3.7.2 查看錶信息 68
3.8 本章常見錯誤 69
3.8.1 創建外鍵約束失敗 69
3.8.2 資料庫被使用導致無法刪除 69
3.8.3 修改數據表屬性失敗 69
3.9 本章小結 70
3.10 跟我上機 70
第4章 SQL Server基礎 71
( 視頻講解:1小時30分鐘)
4.1 T-SQL語言基礎 72
4.1.1 T-SQL語言的組成 72
4.1.2 T-SQL語句結構 73
4.2 SQL中的常量與變數 74
4.2.1 字元串常量 74
4.2.2 二進制常量 75
4.2.3 bit常量 75
4.2.4 日期和時間常量 75
4.2.5 定義局部變數 75
4.2.6 使用全局變數 77
4.3 注釋符、運算符與通配符 79
4.3.1 注釋符(Annotation) 79
4.3.2 運算符(Operator) 80
4.3.3 通配符(Wildcard) 84
4.4 控制程式執行流程 84
4.4.1 BEGIN...END語句 84
4.4.2 IF判斷 85
4.4.3 IF...ELSE選擇 86
4.4.4 CASE函式 88
4.4.5 WHILE循環 90
4.4.6 WHILE...CONTINUE...BREAK 91
4.4.7 RETURN退出 92
4.4.8 GOTO跳轉 93
4.4.9 WAITFOR掛起 93
4.5 調用聚合函式 94
4.5.1 聚合函式概述 94
4.5.2 SUM(求和)函式 94
4.5.3 AVG(平均值)函式 95
4.5.4 MIN(最小值)函式 96
4.5.5 MAX(最大值)函式 97
4.5.6 COUNT(統計)函式 99
4.5.7 DISTINCT(取不重複記錄)函式 100
4.5.8 HAVING(查詢重複記錄)函式 100
4.6 掌握數學函式的使用 101
4.6.1 數學函式概述 102
4.6.2 ABS(絕對值)函式 102
4.6.3 PI(圓周率)函式 103
4.6.4 POWER(乘方)函式 103
4.6.5 RAND(隨機浮點數)函式 104
4.6.6 ROUND(四捨五入)函式 104
4.6.7 SQUARE(平方)函式和
SQRT(平方根)函式 105
4.6.8 三角函式 106
4.7 字元串函式 108
4.7.1 字元串函式概述 108
4.7.2 ASCII(獲取ASCII碼)函式 109
4.7.3 CHARINDEX(返回字元串的起始位置)函式 110
4.7.4 LEFT(取左邊指定個數的字元)函式 111
4.7.5 RIGHT(取右邊指定個數的字元)函式 112
4.7.6 LEN(返回字元個數)函式 112
4.7.7 REPLACE(替換字元串)函式 113
4.7.8 REVERSE(返回字元表達式的反轉)函式 113
4.7.9 STR函式 114
4.7.10 SUBSTRING(取字元串)函式 115
4.8 日期和時間函式 116
4.8.1 日期和時間函式簡述 116
4.8.2 GETDATE(返回當前系統日期和時間)函式 116
4.8.3 DAY(返回指定日期的天)函式 117
4.8.4 MONTH(返回指定日期的月)函式 117
4.8.5 YEAR(返回指定日期的年)函式 118
4.8.6 DATEDIFF(返回日期和時間的邊界數)函式 118
4.8.7 DATEADD(添加日期時間)函式 119
4.9 轉換函式 120
4.9.1 轉換函式概述 120
4.9.2 CAST函式 121
4.9.3 CONVERT函式 122
4.10 元數據函式 123
4.10.1 元數據函式簡介 123
4.10.2 COL_LENGTH函式 124
4.10.3 COL_NAME函式 125
4.10.4 DB_NAME函式 125
4.11 綜合套用 126
4.11.1 查看商品信息表中價格最貴的記錄 126
4.11.2 使用GROUPING SETS組合多個分組結果集 126
4.12 本章常見錯誤 127
4.12.1 有約束衝突卻不提示錯誤信息 127
4.12.2 T-SQL和SQL有什麼區別 127
4.13 本章小結 127
4.14 跟我上機 128
第5章 查詢數據表記錄 129
( 視頻講解:1小時12分鐘)
5.1 編寫SELECT語句 130
5.1.1 SELECT語句基本語法 130
5.1.2 指定公用表表達式 131
5.1.3 SELECT...FROM子句 132
5.1.4 INTO插入數據 136
5.1.5 指定搜尋條件 136
5.1.6 GROUP BY子句 147
5.1.7 HAVING子句 148
5.1.8 指定排列順序 149
5.1.9 去掉重複的記錄 150
5.1.10 TOP顯示指定行 150
5.2 合併多個查詢結果 151
5.2.1 區別合併與聯接 151
5.2.2 使用UNION ALL合併表 152
5.2.3 在UNION中使用order by 153
5.2.4 自動轉換數據類型 153
5.2.5 合併不同類型的數據 154
5.2.6 合併列數不同的表 155
5.2.7 使用UNION合併多表 156
5.3 子查詢與嵌套查詢 156
5.3.1 子查詢概述 156
5.3.2 嵌套查詢簡介 157
5.3.3 簡單嵌套查詢 157
5.3.4 帶IN的嵌套查詢 158
5.3.5 帶NOT IN的嵌套查詢 159
5.3.6 帶SOME的嵌套查詢 159
5.3.7 帶ANY的嵌套查詢 160
5.3.8 帶ALL的嵌套查詢 160
5.3.9 帶EXISTS的嵌套查詢 160
5.4 建立聯接 161
5.4.1 實現內部聯接 161
5.4.2 創建外部聯接 162
5.4.3 交叉聯接兩個表 164
5.4.4 聯接多表 165
5.5 綜合套用 167
5.5.1 學生信息表中按學生的姓氏筆畫重新排序 167
5.5.2 利用模糊查詢進行區間查詢 167
5.5.3 按照升序排列前三的數據 168
5.6 本章常見錯誤 168
5.6.1 在SELECT中使用GROUP BY出錯 168
5.6.2 區分NULL和0值 169
5.6.3 多表連線時,注意要加條件約束 169
5.6.4 注意指定欄位的所屬表 169
5.7 本章小結 169
5.8 跟我上機 169
第6章 掌握資料庫視圖的使用 171
( 視頻講解:15分鐘)
6.1 視圖概述 172
6.2 視圖的分類與操作 172
6.2.1 以界面方式操作視圖 172
6.2.2 使用CREATE VIEW語句創建視圖 174
6.2.3 使用ALTER VIEW語句修改視圖 176
6.2.4 使用DROP VIEW語句刪除視圖 178
6.2.5 使用存儲過程sp_rename修改視圖 179
6.3 通過視圖運算元據 179
6.3.1 從視圖中瀏覽數據 179
6.3.2 向視圖中添加數據 180
6.3.3 修改視圖中的數據 181
6.3.4 刪除視圖中的數據 181
6.4 綜合套用 181
6.4.1 使用視圖過濾數據 181
6.4.2 使用sp_helptext獲取視圖信息 182
6.5 本章常見錯誤 183
6.5.1 創建視圖失敗 183
6.5.2 創建視圖提示基表無效 183
6.5.3 不能通過視圖來更新數據有哪些原因 183
6.6 本章小結 183
6.7 跟我上機 184
第2篇 提 高 篇
第7章 為數據表創建索引 186
( 視頻講解:56分鐘)
7.1 簡述索引 187
7.2 索引的優缺點 187
7.2.1 索引的優點 187
7.2.2 索引的缺點 187
7.3 索引的分類 188
7.3.1 聚集索引的實現原理 188
7.3.2 非聚集索引的實現原理 188
7.4 索引的使用 189
7.4.1 創建索引 189
7.4.2 查看索引信息 192
7.4.3 修改索引 193
7.4.4 銷毀索引 194
7.4.5 設定索引的選項 195
7.5 分析與維護索引 198
7.5.1 索引的分析 198
7.5.2 索引的維護 200
7.6 全文索引和全文目錄 203
7.6.1 使用企業管理器啟用全文索引 203
7.6.2 使用Transact-SQL語句啟用全文索引 205
7.6.3 使用Transact-SQL語句刪除全文索引 207
7.6.4 全文目錄相關操作 208
7.6.5 維護全文目錄 211
7.7 認識數據完整性 213
7.7.1 實現域完整性 214
7.7.2 實體完整性 214
7.7.3 引用完整性 216
7.7.4 用戶定義完整性 216
7.8 綜合套用 217
7.8.1 使用視圖索引查詢數據 217
7.8.2 創建多欄位非聚集索引檢索數據 217
7.9 本章常見錯誤 218
7.9.1 創建聚集索引出錯 218
7.9.2 混淆全文索引和全文目錄 218
7.10 本章小結 218
7.11 跟我上機 219
第8章 利用存儲過程批處理SQL語句 220
( 視頻講解:16分鐘)
8.1 存儲過程簡介 221
8.1.1 存儲過程分類 221
8.1.2 存儲過程的優點 221
8.1.3 存儲過程的分類 222
8.2 創建存儲過程 222
8.2.1 使用嚮導創建存儲過程 222
8.2.2 通過CREATE PROC語句創建存儲過程 224
8.3 管理存儲過程 225
8.3.1 執行一個存儲過程 225
8.3.2 查看存儲過程 226
8.3.3 修改存儲過程 228
8.3.4 重命名存儲過程 230
8.3.5 刪除存儲過程 232
8.4 綜合套用 233
8.4.1 在存儲過程中使用事務 233
8.4.2 創建加密存儲過程 234
8.5 本章常見錯誤 235
8.5.1 帶回傳參數的存儲過程沒有帶回結果 235
8.5.2 創建存儲過程有哪些注意事項 235
8.6 本章小結 236
8.7 跟我上機 236
第9章 套用觸發器最佳化查詢 237
( 視頻講解:16分鐘)
9.1 觸發器概述 238
9.2 觸發器的優點與分類 238
9.2.1 觸發器的優點 238
9.2.2 觸發器的分類 238
9.3 創建觸發器 239
9.3.1 創建DML觸發器 239
9.3.2 建立DDL觸發器 240
9.3.3 創建登錄觸發器 242
9.4 管理觸發器 244
9.4.1 查看觸發器 244
9.4.2 修改觸發器 245
9.4.3 重命名觸發器 248
9.4.4 禁用和啟用觸發器 248
9.4.5 刪除觸發器 250
9.5 綜合套用 252
9.5.1 創建遞歸觸發器,實現只允許一次刪除一條記錄 252
9.5.2 使用觸發器向資料庫的表中
添加數據 252
9.6 本章常見錯誤 253
9.6.1 修改數據表失敗,提示未提交數據 253
9.6.2 觸發器的遞歸調用方式 253
9.7 本章小結 254
9.8 跟我上機 254
第10章 游標的使用 255
( 視頻講解:12分鐘)
10.1 游標簡介 256
10.1.1 游標的實現過程 256
10.1.2 游標分類 256
10.2 游標的相關操作 257
10.2.1 聲明游標 257
10.2.2 使用OPEN打開游標 260
10.2.3 讀取游標中的數據 261
10.2.4 關閉游標 263
10.2.5 釋放游標 264
10.3 查看游標屬性 264
10.3.1 使用sp_cursor_list查看 265
10.3.2 通過sp_describe_cursor查看 266
10.4 綜合套用 268
10.4.1 利用游標在商品表中返回指定商品行數據 268
10.4.2 用索引改變游標中表的行順序 268
10.5 本章常見錯誤 269
10.5.1 打開游標使用之後忘記關閉和釋放游標 269
10.5.2 為什麼要避免使用游標 269
10.6 本章小結 270
10.7 跟我上機 270
第11章 通過事務修改數據 271
( 視頻講解:28分鐘)
11.1 簡述事務 272
11.2 事務模式 272
11.2.1 定義顯式事務 273
11.2.2 設定隱式事務 274
11.2.3 在API中控制隱式事務 274
11.2.4 提交和回滾事務 275
11.3 事務的使用 275
11.3.1 開始事務 275
11.3.2 結束事務 276
11.3.3 回滾事務 277
11.3.4 事務的工作機制 278
11.3.5 自動提交事務 278
11.3.6 事務的並發問題 279
11.3.7 隔離級別 280
11.4 鎖的概念 283
11.4.1 了解SQL Server鎖的運行機制 283
11.4.2 鎖有哪些模式 283
11.4.3 鎖的粒度 285
11.4.4 查看鎖的相關信息 285
11.4.5 死鎖 286
11.5 分散式事務 287
11.5.1 分散式事務概述 288
11.5.2 分散式事務的創建 288
11.5.3 分散式處理協調器 289
11.6 綜合套用 289
11.6.1 使用事務對表進行添加和查詢操作 289
11.6.2 使用事務完成對表的修改操作 289
11.7 本章常見錯誤 290
11.7.1 無法回滾,找不到該事務或保存點 290
11.7.2 事務提交不起作用 290
11.7.3 事務讀取到的值與資料庫的值不一致 290
11.7.4 遇到死鎖情況怎么辦 291
11.8 本章小結 291
11.9 跟我上機 291
第12章 資料庫的維護管理 292
( 視頻講解:30分鐘)
12.1 資料庫的脫機與在線上 293
12.1.1 實現資料庫脫機 293
12.1.2 使資料庫在線上 293
12.2 資料庫的分離和附加 294
12.2.1 分離資料庫 294
12.2.2 附加資料庫 295
12.3 導入/導出數據 295
12.3.1 導入SQL Server數據表 296
12.3.2 導入其他數據源的數據 299
12.3.3 導出SQL Server數據表 304
12.4 備份和恢複數據庫 308
12.4.1 有哪些備份類型 308
12.4.2 選擇恢復模式 308
12.4.3 創建資料庫備份 309
12.4.4 恢複數據庫 311
12.5 收縮資料庫和檔案 313
12.5.1 自動收縮資料庫 313
12.5.2 手動收縮資料庫 314
12.6 SQL腳本的生成與執行 316
12.6.1 生成資料庫腳本檔案 316
12.6.2 生成數據表腳本檔案 317
12.6.3 執行SQL腳本 318
12.7 資料庫維護計畫 318
12.8 綜合套用 321
12.8.1 查看用戶創建的所有資料庫 321
12.8.2 備份資料庫 321
12.9 本章常見錯誤 322
12.9.1 資料庫恢復失敗 322
12.9.2 分離和附加資料庫時,需要注意的問題 322
12.10 本章小結 322
12.11 跟我上機 323
第13章 資料庫的安全機制 324
( 視頻講解:12分鐘)
13.1 資料庫安全概述 325
13.2 資料庫登錄管理 325
13.2.1 選擇驗證模式 325
13.2.2 管理登錄賬號 325
13.2.3 更改登錄驗證方式 334
13.2.4 設定密碼 335
13.3 用戶及許可權管理 336
13.3.1 創建與刪除資料庫用戶 336
13.3.2 設定伺服器角色許可權 337
13.4 綜合套用 339
13.4.1 創建資料庫用戶賬戶 339
13.4.2 設定資料庫的訪問許可權 340
13.5 本章常見錯誤 341
13.5.1 資料庫附加失敗 341
13.5.2 伺服器'XX'上的MSDTC不可用 341
13.5.3 SQL Express無法連線對象實例 342
13.6 本章小結 342
13.7 跟我上機 342
第3篇 實 戰 篇
第14章 SQL Server在C#開發中的套用--
企業人事管理系統 344
( 視頻講解:1小時26分鐘)
14.1 開發背景 345
14.2 需求分析 345
14.3 系統設計 345
14.3.1 系統目標 345
14.3.2 系統功能結構 345
14.3.3 系統預覽 346
14.3.4 業務流程圖 348
14.3.5 編碼規則 349
14.3.6 程式運行環境 349
14.3.7 資料庫設計 350
14.3.8 資料夾組織結構 357
14.4 公共類設計 358
14.4.1 MyMeans公共類 358
14.4.2 MyModule公共類 360
14.5 登錄模組設計 370
14.5.1 登錄模組概述 370
14.5.2 登錄模組技術分析 370
14.5.3 登錄模組實現過程 371
14.6 主窗體設計 372
14.6.1 主窗體概述 372
14.6.2 主窗體技術分析 374
14.6.3 主窗體實現過程 374
14.6.4 單元測試 376
14.7 人事檔案瀏覽模組設計 377
14.7.1 人事檔案瀏覽窗體概述 377
14.7.2 人事檔案瀏覽技術分析 378
14.7.3 人事檔案瀏覽實現過程 379
14.7.4 單元測試 385
14.8 人事資料查詢模組設計 386
14.8.1 人事資料查詢窗體概述 386
14.8.2 人事資料查詢窗體技術分析 387
14.8.3 人事資料查詢窗體實現過程 388
14.9 開發常見問題與解決 390
14.9.1 文本框只能輸入數字或單精度 390
14.9.2 在資料庫中存取圖片 391
14.10 本章總結 392
第15章 SQL Server在Java開發中的套用--企業進銷存管理系統 393
( 視頻講解:1小時28分鐘)
15.1 需求分析 394
15.2 系統設計 394
15.2.1 系統目標 394
15.2.2 系統功能結構 394
15.2.3 系統業務流程圖 395
15.2.4 系統編碼規範 395
15.3 系統開發及運行環境 397
15.4 資料庫與數據表設計 397
15.4.1 資料庫分析 398
15.4.2 創建資料庫 398
15.4.3 創建數據表 399
15.5 系統資料夾組織結構 403
15.6 公共類設計 403
15.6.1 數據模型公共類 403
15.6.2 Dao公共類 405
15.7 登錄模組設計 411
15.7.1 設計登錄布局檔案 412
15.7.2 "密碼"文本框的回車事件 413
15.7.3 "登錄"按鈕的事件處理 413
15.8 系統主窗體設計 414
15.8.1 設計選單欄 415
15.8.2 設計工具列 417
15.8.3 設計狀態欄 418
15.9 進貨單模組設計 419
15.9.1 設計進貨單窗體 420
15.9.2 添加進貨商品 420
15.9.3 進貨統計 422
15.9.4 商品入庫 423
15.10 銷售單模組設計 425
15.10.1 設計銷售單窗體 426
15.10.2 添加銷售商品 426
15.10.3 銷售統計 427
15.10.4 商品銷售 428
15.11 庫存檔點模組設計 429
15.11.1 設計庫存檔點窗體 430
15.11.2 讀取庫存商品 430
15.11.3 統計損益數量 432
15.12 資料庫備份與恢復模組設計 433
15.12.1 設計窗體 433
15.12.2 檔案瀏覽 434
15.12.3 備份資料庫 435
15.12.4 恢複數據庫 435
15.13 運行項目 436
15.14 開發常見問題與解決 438
15.14.1 資料庫無法訪問 438
15.14.2 打包的JAR檔案無法登錄 439
15.14.3 資料庫還原不成功 440
15.14.4 資料庫唯讀 440
15.14.5 無法打開內部窗體 441
15.14.6 "關於"界面被其他窗體覆蓋 441
15.14.7 打包JAR檔案之後無法運行 441
15.14.8 程式運行後沒有出現閃屏界面 442
15.15 本章小結 442