SQL入門經典(第4版)

SQL入門經典(第4版)

《SQL入門經典(第4版)》是2009年5月人民郵電出版社出版的圖書,作者是[美]Ryan Stephens、Ron Plew、Arie D·Jones。

基本介紹

  • 中文名:SQL入門經典(第4版)
  • 作者:[美]Ryan Stephens、Ron Plew、Arie D·Jones
  • ISBN:9787115204301
  • 頁數:327頁
  • 定價:39元
  • 出版社:人民郵電出版社
  • 出版時間:2009年5月
  • 裝幀:平裝
  • 開本:16開
內容簡介,圖書目錄,

內容簡介

本書的作者都是資料庫教學與套用的專家,有著豐富的經驗。本書詳細介紹了SQL語言的基本語法、基本概念,說明了各種SQL實現與ANSI標準之間的差別。書中包含了大量的範例,直觀地說明了如何使用SQL對數據進行處理。每章後面還有針對性很強的測驗與練習,能夠幫助讀者更好地理解和掌握學習的內容。在最後的附錄里還有關於安裝MySQL的詳細介紹、書中用到的關鍵SQL語句、測驗和練習的答案。
本書的內容層次清晰,針對性強,非常適合初學者作為入門教材。

圖書目錄

第 一部分 SQL概念綜述
第 1章 歡迎來到SQL世界 3
1.1 SQL定義及歷史 3
1.1.1 什麼是SQL 4
1.1.2 什麼是ANSI SQL 4
1.1.3 新標準:SQL-2003 4
1.1.4 什麼是資料庫 5
1.1.5 關係型資料庫 5
1.1.6 客戶端/伺服器技術 6
1.1.7 基於Web的資料庫系統 7
1.1.8 主流資料庫廠商 7
1.2 SQL會話 8
1.2.1 CONNECT 8
1.2.2 DISCONNECT和EXIT 8
1.3 SQL命令的類型 8
1.3.1 定義資料庫結構 9
1.3.2 運算元據 9
1.3.3 選擇數據 9
1.3.4 數據控制語言 9
1.3.5 數據管理命令 10
1.3.6 事務控制命令 10
1.4 本書使用的資料庫 10
1.4.1 表命名標準 11
1.4.2 數據一瞥 11
1.4.3 表的構成 12
1.4.4 MySQL範例和練習 14
1.5 小結 14
1.6 問與答 14
1.7 實踐 15
1.7.1 測驗 15
1.7.2 練習 15
第 二部分 建立資料庫
第 2章 定義數據結構 19
2.1 數據是什麼 19
2.2 基本數據類型 19
2.2.1 定長字元串 20
2.2.2 變長字元串 20
2.2.3 大對象類型 21
2.2.4 數值類型 21
2.2.5 小數類型 22
2.2.6 整數 22
2.2.7 浮點數 23
2.2.8 日期和時間類型 23
2.2.9 直義字元串 23
2.2.10 NULL數據類型 24
2.2.11 布爾值 24
2.2.12 自定義類型 24
2.2.13 域 25
2.3 小結 25
2.4 問與答 26
2.5 實踐 26
2.5.1 測驗 26
2.5.2 練習 27
第3章 管理資料庫對象 29
3.1 什麼是資料庫對象 29
3.2 什麼是規劃 29
3.3 表:數據的主要存儲方式 31
3.3.1 列 31
3.3.2 行 32
3.3.3 CREATE TABLE語句 32
3.3.4 命名規範 33
3.3.5 ALTER TABLE命令 33
3.3.6 從現有表新建另一個表 35
3.3.7 刪除表 36
3.4 完整性約束 36
3.4.1 主鍵約束 36
3.4.2 惟一性約束 37
3.4.3 外鍵約束 38
3.4.4 NOT NULL約束 38
3.4.5 檢查約束 39
3.4.6 去除約束 39
3.5 小結 40
3.6 問與答 40
3.7 實踐 40
3.7.1 測驗 41
3.7.2 練習 41
第4章 規格化過程 42
4.1 規格化資料庫 42
4.1.1 原始資料庫 42
4.1.2 資料庫邏輯設計 43
4.1.3 規格形式 44
4.1.4 命名規範 46
4.1.5 規格化的優點 47
4.1.6 規格化的缺點 47
4.2 去規格化資料庫 48
4.3 小結 48
4.4 問與答 48
4.5 實踐 49
4.5.1 測驗 49
4.5.2 練習 49
第5章 運算元據 51
5.1 數據操作概述 51
5.2 用新數據填充表 51
5.2.1 把數據插入到表 52
5.2.2 給表里指定列插入數據 53
5.2.3 從另一個表插入數據 53
5.2.4 插入NULL值 55
5.3 更新現有數據 55
5.3.1 更新一列的數據 55
5.3.2 更新一條或多記錄里的多個欄位 56
5.4 從表里刪除數據 56
5.5 小結 57
5.6 問與答 57
5.7 實踐 58
5.7.1 測驗 58
5.7.2 練習 59
第6章 管理資料庫事務 60
6.1 什麼是事務 60
6.2 控制事務 61
6.2.1 COMMIT命令 61
6.2.2 ROLLBACK命令 62
6.2.3 SAVEPOINT命令 63
6.2.4 ROLLBACK TO SAVEPOINT命令 64
6.2.5 RELEASE SAVEPOINT命令 65
6.2.6 SET TRANSACTION命令 65
6.3 事務控制與資料庫性能 65
6.4 小結 66
6.5 問與答 66
6.6 實踐 66
6.6.1 測驗 66
6.6.2 練習 67
第三部分 從查詢中獲得有效的結果
第7章 資料庫查詢 71
7.1 什麼是查詢 71
7.2 SELECT語句 71
7.2.1 SELECT語句 72
7.2.2 FROM子句 73
7.2.3 WHERE子句 74
7.2.4 ORDER BY子句 75
7.2.5 大小寫敏感性 76
7.3 簡單查詢的範例 77
7.3.1 統計表里的記錄數量 78
7.3.2 從另一個用戶表里選擇數據 78
7.3.3 使用欄位別名 79
7.4 小結 79
7.5 問與答 79
7.6 實踐 80
7.6.1 測驗 80
7.6.2 練習 80
第8章 使用操作符對數據進行分類 82
8.1 什麼是SQL里的操作符 82
8.2 比較操作符 82
8.2.1 相等 83
8.2.2 不等於 83
8.2.3 小於和大於 84
8.2.4 比較操作符的組合 84
8.3 邏輯操作符 85
8.3.1 IS NULL 85
8.3.2 BETWEEN 86
8.3.3 IN 86
8.3.4 LIKE 87
8.3.5 EXISTS 88
8.3.6 ALL、SOME和ANY操作符 88
8.4 連線操作符 89
8.4.1 AND 90
8.4.2 OR 90
8.5 求反操作符 92
8.5.1 不相等 92
8.5.2 NOT BETWEEN 92
8.5.3 NOT IN 93
8.5.4 NOT LIKE 93
8.5.5 IS NOT NULL 94
8.5.6 NOT EXISTS 94
8.6 算術操作符 94
8.6.1 加法 95
8.6.2 減法 95
8.6.3 乘法 95
8.6.4 除法 96
8.6.5 算術操作符的組合 96
8.7 小結 97
8.8 問與答 97
8.9 實踐 97
8.9.1 測驗 97
8.9.2 練習 98
第9章 匯總查詢得到的數據 100
9.1 什麼是匯總函式 100
9.1.1 COUNT函式 101
9.1.2 SUM函式 103
9.1.3 AVG函式 103
9.1.4 MAX函式 104
9.1.5 MIN函式 105
9.2 小結 105
9.3 問與答 106
9.4 實踐 106
9.4.1 測驗 106
9.4.2 練習 107
第 10章 數據排序與分組 108
10.1 為什麼要對數據進行分組 108
10.2 GROUP BY子句 109
10.2.1 分組函式 109
10.2.2 對選中的數據進行分組 109
10.2.3 創建分組和使用匯總函式 109
10.2.4 以整數代表欄位名稱 112
10.3 GROUP BY與ORDER BY 112
10.4 HAVING子句 114
10.5 小結 115
10.6 問與答 115
10.7 實踐 115
10.7.1 測驗 115
10.7.2 練習 116
第 11章 調整數據的外觀 117
11.1 ANSI字元函式 117
11.1.1 串接 117
11.1.2 子串 118
11.1.3 TRANSLATE 118
11.2 常用字元函式 118
11.2.1 串接 118
11.2.2 TRANSLATE 119
11.2.3 REPLACE 120
11.2.4 UPPER 120
11.2.5 LOWER 120
11.2.6 SUBSTR 121
11.2.7 INSTR 122
11.2.8 LTRIM 122
11.2.9 RTRIM 123
11.2.10 DECODE 123
11.3 其他字元函式 124
11.3.1 LENGTH 124
11.3.2 IFNULL(檢查NULL值) 124
11.3.3 COALESCE 125
11.3.4 LPAD 125
11.3.5 RPAD 126
11.3.6 ASCII 126
11.4 算術函式 126
11.5 轉換函式 127
11.5.1 字元串轉換為數字 127
11.5.2 數字轉換為字元串 128
11.6 字元函式的組合使用 128
11.7 小結 129
11.8 問與答 129
11.9 實踐 130
11.9.1 測驗 130
11.9.2 練習 130
第 12章 日期和時間 132
12.1 日期是如何存儲的 132
12.1.1 日期和時間的標準數據類型 132
12.1.2 DATETIME元素 133
12.1.3 不同實現的日期類型 133
12.2 日期函式 134
12.2.1 當前日期 134
12.2.2 時區 134
12.2.3 時間與日期相加 135
12.2.4 比較日期和時間間隔 136
12.2.5 其他日期函式 137
12.3 日期轉換 137
12.3.1 日期描述 138
12.3.2 日期轉換為字元串 140
12.3.3 字元串轉換為日期 140
12.4 小結 141
12.5 問與答 141
12.6 實踐 141
12.6.1 測驗 141
12.6.2 練習 141
第四部分 建立複雜的資料庫查詢
第 13章 在查詢里結合表 145
13.1 從多個表獲取數據 145
13.2 結合的類型 146
13.2.1 結合條件的位置 146
13.2.2 等值結合 146
13.2.3 自然結合 147
13.2.4 使用表的別名 148
13.2.5 不等值結合 149
13.2.6 外部結合 150
13.2.7 自結合 151
13.2.8 結合多個主鍵 152
13.3 需要考慮的事項 153
13.3.1 使用基表 153
13.3.2 笛卡爾積 154
13.4 小結 155
13.5 問與答 156
13.6 實踐 156
13.6.1 測驗 156
13.6.2 練習 157
第 14章 使用子查詢定義未確定數據 158
14.1 什麼是子查詢 158
14.1.1 子查詢與SELECT語句 159
14.1.2 子查詢與INSERT語句 160
14.1.3 子查詢與UPDATE語句 161
14.1.4 子查詢與DELETE語句 162
14.2 嵌套的子查詢 162
14.3 關聯子查詢 164
14.4 小結 164
14.5 問與答 165
14.6 實踐 165
14.6.1 測驗 165
14.6.2 練習 166
第 15章 組合多個查詢 168
15.1 單查詢與組合查詢 168
15.2 組合查詢操作符 169
15.2.1 UNION 169
15.2.2 UNION ALL 171
15.2.3 INTERSECT 172
15.2.4 EXCEPT 172
15.3 組合查詢里使用ORDER BY 173
15.4 組合查詢里使用GROUP BY 174
15.5 獲取準確的數據 175
15.6 小結 176
15.7 問與答 176
15.8 實踐 176
15.8.1 測驗 177
15.8.2 練習 178
第五部分 SQL性能調整
第 16章 利用索引改善性能 181
16.1 什麼是索引 181
16.2 索引是如何工作的 182
16.3 CREATE INDEX命令 182
16.4 索引的類型 183
16.4.1 單欄位索引 183
16.4.2 惟一索引 183
16.4.3 組合索引 184
16.4.4 隱含索引 184
16.5 何時考慮使用索引 184
16.6 何時應該避免使用索引 185
16.7 刪除索引 186
16.8 小結 186
16.9 問與答 186
16.10 實踐 187
16.10.1 測驗 187
16.10.2 練習 187
第 17章 改善資料庫性能 188
17.1 什麼是SQL語句調整 188
17.2 資料庫調整與SQL語句調整 189
17.3 格式化SQL語句 189
17.3.1 為提高可讀性格式化SQL語句 189
17.3.2 FROM子句里的表 191
17.3.3 結合條件的次序 191
17.3.4 最嚴格條件 191
17.4 全表掃描 192
17.5 其他性能考慮 193
17.5.1 使用LIKE操作符和通配符 193
17.5.2 避免使用OR操作符 194
17.5.3 避免使用HAVING子句 195
17.5.4 避免大規模排序操作 195
17.5.5 使用存儲過程 195
17.5.6 在批載入時關閉索引 195
17.6 性能工具 196
17.7 小結 196
17.8 問與答 196
17.9 實踐 197
17.9.1 測驗 197
17.9.2 練習 197
第六部分 使用SQL管理用戶和安全
第 18章 管理資料庫用戶 201
18.1 用戶就是原因 202
18.1.1 用戶的類型 202
18.1.2 誰管理用戶 202
18.1.3 用戶在資料庫里的位置 203
18.1.4 不同規劃里的用戶 203
18.2 管理過程 203
18.2.1 創建用戶 204
18.2.2 創建規劃 205
18.2.3 刪除規劃 206
18.2.4 調整用戶 207
18.2.5 用戶會話 207
18.2.6 禁止用戶訪問 208
18.3 資料庫用戶使用的工具 208
18.4 小結 208
18.5 問與答 209
18.6 實踐 209
18.6.1 測驗 209
18.6.2 練習 209
第 19章 管理資料庫安全 211
19.1 什麼是資料庫安全 211
19.2 什麼是許可權 212
19.2.1 系統許可權 212
19.2.2 對象許可權 213
19.2.3 誰負責授予和撤消許可權 214
19.3 控制用戶訪問 214
19.3.1 GRANT命令 215
19.3.2 REVOKE命令 216
19.3.3 控制對單獨欄位的訪問 216
19.3.4 資料庫賬戶PUBLIC 216
19.3.5 許可權組 217
19.4 通過角色控制許可權 217
19.4.1 CREATE ROLE語句 218
19.4.2 DROP ROLE語句 218
19.4.3 SET ROLE語句 218
19.5 小結 218
19.6 問與答 219
19.7 實踐 219
19.7.1 測驗 219
19.7.2 練習 220
第七部分 摘要數據結構
第 20章 創建和使用視圖及異名 223
20.1 什麼是視圖 223
20.1.1 使用視圖來簡化數據訪問 224
20.1.2 使用視圖作為一種安全形式 224
20.1.3 使用視圖維護摘要數據 225
20.2 創建視圖 225
20.2.1 從一個表創建視圖 225
20.2.2 從多個表創建視圖 227
20.2.3 從視圖創建視圖 227
20.3 WITH CHECK OPTION 228
20.4 通過視圖更新數據 229
20.4.1 在視圖里插入記錄 229
20.4.2 從視圖里刪除記錄 229
20.5 從視圖創建表 229
20.6 視圖與ORDER BY子句 230
20.7 刪除視圖 230
20.8 什麼是異名 231
20.8.1 創建異名 231
20.8.2 刪除異名 232
20.9 小結 232
20.10 問與答 232
20.11 實踐 233
20.11.1 測驗 233
20.11.2 練習 233
第 21章 使用系統 234
21.1 什麼是系統 234
21.2 如何創建系統 235
21.3 系統里包含什麼內容 235
21.3.1 用戶數據 236
21.3.2 安全信息 236
21.3.3 資料庫設計信息 236
21.3.4 性能統計 236
21.4 不同實現里的系統表格 237
21.5 查詢系統 238
21.6 更新系統對象 239
21.7 小結 240
21.8 問與答 240
21.9 實踐 241
21.9.1 測驗 241
21.9.2 練習 241
第八部分 在實際工作中套用SQL知識
第 22章 高級SQL主題 245
22.1 游標 245
22.1.1 打開游標 246
22.1.2 從游標獲取數據 246
22.1.3 關閉游標 247
22.2 存儲過程和函式 247
22.3 觸發器 249
22.3.1 CREATE TRIGGER語句 249
22.3.2 DROP TRIGGER語句 250
22.3.3 FOR EACH ROW語句 251
22.4 動態SQL 251
22.5 調用級接口 251
22.6 使用SQL生成SQL 252
22.7 直接SQL與嵌入SQL 252
22.8 視窗表格函式 253
22.9 使用XML 253
22.10 小結 253
22.11 問與答 254
22.12 實踐 254
22.12.1 測驗 254
22.12.2 練習 255
第 23章 SQL擴展到企業、網際網路和內部網 256
23.1 SQL與企業 256
23.1.1 後台程式 256
23.1.2 前台程式 257
23.2 訪問遠程資料庫 258
23.2.1 ODBC 258
23.2.2 JDBC 258
23.2.3 廠商連線產品 259
23.2.4 通過Web接口訪問遠程資料庫 259
23.3 SQL與網際網路 260
23.3.1 讓數據可以被全世界的顧客使用 260
23.3.2 向雇員和授權顧客提供數據 260
23.3.3 使用SQL的前台Web工具 260
23.4 SQL與內部網 260
23.5 小結 261
23.6 問與答 261
23.7 實踐 261
23.7.1 測驗 262
23.7.2 練習 262
第 24章 標準SQL的擴展 263
24.1 各種實現 263
24.1.1 不同實現之間的區別 263
24.1.2 遵循ANSI SQL 264
24.1.3 SQL的擴展 265
24.2 擴展範例 265
24.2.1 Transact-SQL 266
24.2.2 PL/SQL 266
24.2.3 MySQL 267
24.3 互動SQL語句 267
24.4 小結 268
24.5 問與答 268
24.6 實踐 269
24.6.1 測驗 269
24.6.2 練習 269
第九部分 附錄
附錄A 常用SQL命令 273
A.1 SQL語句 273
A.2 SQL子句 276
附錄B 使用MySQL進行練習 278
B.1 Windows安裝指令 278
B.2 Linux安裝指令 279
附錄C 測驗和練習的答案 280
附錄D 本書範例的CREATE TABLE語句 314
D.1 EMPLOYEE_TBL 314
D.2 EMPLOYEE_PAY_TBL 314
D.3 CUSTOMER_TBL 314
D.4 ORDERS_TBL 315
D.5 PRODUCTS_TBL 315
附錄E 書中範例的INSERT語句 316
E.1 EMPLOYEE_TBL 316
E.2 EMPLOYEE_PAY_TBL 316
E.3 CUSTOMER_TBL 317
E.4 ORDERS_TBL 318
E.5 PRODUCTS_TBL 318
附錄F 額外練習 320
術語表 325

相關詞條

熱門詞條

聯絡我們