圖書信息
出版社: 清華大學出版社; 第2版 (2007年11月1日)
平裝: 375頁
開本: 16開
ISBN: 9787302158097
條形碼: 9787302158097
尺寸: 26 x 18.5 x 1.5 cm
重量: 558 g
內容簡介
SQL(結構化查詢語言)是資料庫系統的通用語言,利用它可以用幾乎同樣的語句在不同的資料庫系統上執行同樣的操作,在資料庫系統的開發中有著非常重要和廣泛的套用。
本書內容可分為3大部分,共15章,由淺入深地給讀者講解了SQL在3種流行的後台資料庫系統中的套用。第1部分包括第l~2章,介紹了資料庫和SQL的基礎知識;第2部分包括第3~7章,介紹了各種SQL語句的具體使用,包括創建資料庫、創建表以及對數據進行各種操作。第3部分包括第8~15章,介紹了視圖、數據完整性、索引、存儲過程、觸發器、游標、事務及SQL的安全性。
本書適合作為高等院校計算機、信息技術及相關專業的教材,也可作為廣大使用支持SQL-3標準的資料庫操作平台的用戶閱讀參考。
目錄
第1章 關係型資料庫和SQL簡介1
1.1 SQL簡介1
1.1.1 SQL概述1
1.1.2 SQL的功能與特性2
1.1.3 SQL的分類3
1.2 SQL的擴展3
1.2.1 T-SQL3
1.2.2 MySQL7
1.2.3 MySQL與標準SQL的差別9
1.2.4 PL/SQL9
1.3 資料庫的發展史12
1.3.1 資料庫模型12
1.3.2 關係型資料庫12
1.4 常用的SQL資料庫13
1.4.1 Microsoft SQL Server13
1.4.2 Oracle14
1.4.3 MySQL15
1.5 數據設計16
1.5.1 資料庫設計的目的和意義16
1.5.2 資料庫設計的基本步驟16
1.5.3 天方論壇系統資料庫
Tfbbs的設計17
1.6 練習題22
1.6.1 選擇22
1.6.2 填空23
1.6.3 簡答23
第2章 SQL基礎24
2.1 SQL數據類型24
2.1.1 SQL數據類型講解24
2.1.2 T-SQL中的數據類型26
2.1.3 MySQL中的數據類型31
2.1.4 PL/SQL中的數據類型34
2.2 SQL常量和表達式35
2.2.1 SQL常量35
2.2.2 表達式37
2.3 SQL內置函式39
2.3.1 SQL內置函式詳解39
2.3.2 T-SQL中的內置函式41
2.3.3 MySQL中的內置函式46
2.3.4 PL/SQL中的函式48
2.4 SQL語句50
2.4.1 SQL語句概述50
2.4.2 SQL語句分類51
2.5 練習題52
2.5.1 選擇52
2.5.2 填空53
2.5.3 簡答53
第3章 資料庫的創建和管理54
3.1 創建資料庫54
3.1.1 創建資料庫語法詳解54
3.1.2 在3種資料庫伺服器中
創建資料庫的實例59
3.2 管理資料庫61
3.2.1 修改資料庫語法61
3.2.2 擴充資料庫容量實例65
3.2.3 壓縮資料庫容量實例66
3.3 刪除資料庫67
3.3.1 刪除資料庫語法67
3.3.2 刪除資料庫的實例68
3.4 練習題70
3.4.1 選擇70
3.4.2 填空71
3.4.3 簡答71
3.4.4 上機71
第4章 創建和管理表72
4.1 創建表72
4.1.1 創建表語法72
4.1.2 創建表實例78
4.2 修改資料庫表84
4.2.1 修改表語法85
4.2.2 修改表名稱實例88
4.2.3 添加新列實例90
4.2.4 修改已有的列長度93
4.2.5 修改已有列的數據類型96
4.2.6 刪除表中已有列的實例99
4.3 刪除資料庫表102
4.3.1 刪除表語法102
4.3.2 刪除表實例103
4.4 練習題105
4.4.1 選擇105
4.4.2 填空106
4.4.3 簡答106
4.4.4 上機107
第5章 操作SQL數據110
5.1 插入SQL數據110
5.1.1 使用默認值110
5.1.2 使用INSERT...VALUES
語句110
5.1.3 使用INSERT...SELECT
語句111
5.1.4 INSERT語句語法112
5.1.5 INSERT語句實例118
5.2 修改SQL數據123
5.2.1 UPDATE語句語法123
5.2.2 UPDATE語句實例127
5.3 刪除SQL數據130
5.3.1 DELETE語句語法131
5.3.2 DELETE語句實例133
5.4 練習題138
5.4.1 選擇138
5.4.2 填空139
5.4.3 簡答139
5.4.4 上機139
第6章 表的簡單查詢141
6.1 SELECT語句141
6.1.1 SELECT語句概述141
6.1.2 SELECT語句語法142
6.2 使用SELECT子句146
6.2.1 選擇所有的列146
6.2.2 選擇所需的列148
6.2.3 別名的使用150
6.3 使用FROM子句150
6.3.1 從表和視圖中選擇150
6.3.2 在一個FROM子句中
使用別名150
6.4 使用TOP子句152
6.4.1 TOP語句概述152
6.4.2 TOP語句實例153
6.5 使用WHERE子句153
6.5.1 在WHERE子句中使用
比較運算符154
6.5.2 在WHERE子句中使用
邏輯運算符157
6.6 分組查詢160
6.6.1 GROUP BY子句160
6.6.2 HAVING子句162
6.7 模糊查詢162
6.7.1 使用LIKE語句162
6.7.2 IN子句165
6.7.3 BETWEEN子句166
6.7.4 IS NULL運算符168
6.7.5 等號、IN、LIKE三者
的比較170
6.8 練習題170
6.8.1 選擇170
6.8.2 填空171
6.8.3 簡答171
6.8.4 上機171
第7章 表的高級查詢172
7.1 多個表的連線查詢172
7.1.1 內連線173
7.1.2 外連線177
7.1.3 交叉連線180
7.2 集合查詢182
7.2.1 UNION連線運算符183
7.2.2 intersect連線運算符186
7.2.3 MINUS連線運算符187
7.3 子查詢188
7.3.1 使用IN的子查詢189
7.3.2 用ANY或ALL修改的
比較運算符191
7.3.3 使用EXISTS的子查詢193
7.3.4 使用NOT EXISTS的
子查詢194
7.3.5 在INSERT語句中使用
子查詢196
7.3.6 在UPDATE語句中使用
子查詢198
7.3.7 在DELETE語句中使用
子查詢200
7.4 DISTINCT和COMPUTE
BY201
7.4.1 DISTINCT201
7.4.2 COMPUTE 和COMPUTE
BY203
7.5 練習題204
7.5.1 選擇204
7.5.2 填空204
7.5.3 簡答205
7.5.4 上機205
第8章 視圖206
8.1 視圖概述206
8.2 視圖的優點和缺點207
8.2.1 視圖的優點207
8.2.2 視圖的缺點208
8.3 創建視圖208
8.3.1 創建視圖的語法208
8.3.2 創建簡單視圖212
8.3.3 創建列的別名215
8.3.4 使用子查詢的視圖217
8.4 修改視圖221
8.4.1 修改視圖的語法221
8.4.2 修改視圖的實例222
8.5 刪除視圖224
8.5.1 刪除視圖的語法224
8.5.2 刪除視圖的實例225
8.6 通過視圖管理數據227
8.6.1 通過視圖插入數據228
8.6.2 通過視圖更新數據231
8.6.3 通過視圖刪除數據234
8.7 練習題236
8.7.1 選擇236
8.7.2 填空237
8.7.3 簡答237
8.7.4 上機237
第9章 數據完整性238
9.1 了解數據完整性238
9.1.1 數據完整性的定義238
9.1.2 數據完整性類型238
9.1.3 數據完整性意義239
9.2 約束240
9.2.1 對約束的一些操作240
9.2.2 幾種約束簡介240
9.2.3 PRIMARY KEY約束243
9.2.4 FOREIGN KEY約束246
9.2.5 UNIQUE約束248
9.2.6 NOT NULL約束251
9.2.7 DEFAULT約束253
9.3 規則255
9.4 練習題256
9.4.1 選擇256
9.4.2 填空256
9.4.3 簡答256
9.4.4 上機257
第10章 索引258
10.1 索引簡介258
10.1.1 索引的優點258
10.1.2 索引的缺點259
10.1.3 索引的分類260
10.1.4 索引的特性260
10.2 創建索引261
10.2.1 創建索引的語法261
10.2.2 創建唯一索引的實例268
10.2.3 創建組合索引的實例270
10.3 刪除索引271
10.3.1 刪除索引的語法271
10.3.2 刪除索引的實例273
10.4 練習題275
10.4.1 選擇275
10.4.2 填空275
10.4.3 簡答276
10.4.4 上機276
第11章 存儲過程277
11.1 存儲過程概述277
11.1.1 存儲過程簡介277
11.1.2 使用存儲過程的優缺點278
11.2 創建和執行存儲過程278
11.2.1 創建存儲過程的語法278
11.2.2 創建存儲過程的實例282
11.2.3 執行存儲過程283
11.3 存儲過程中使用參數285
11.3.1 使用默認值參數285
11.3.2 使用帶OUTPUT的返回
參數286
11.3.3 RETURN語句289
11.4 修改存儲過程289
11.4.1 修改存儲過程的語法290
11.4.2 修改存儲過程的實例292
11.5 刪除存儲過程294
11.5.1 刪除存儲過程的語法294
11.5.2 刪除存儲過程實例294
11.6 練習題296
11.6.1 選擇296
11.6.2 填空296
11.6.3 簡答296
11.6.4 上機297
第12章 觸發器298
12.1 觸發器概述298
12.1.1 觸發器的優點298
12.1.2 觸發器的組成部分299
12.1.3 觸發器的功能300
12.2 創建觸發器300
12.2.1 創建觸發器的語法301
12.2.2 創建觸發器的實例304
12.3 修改觸發器306
12.3.1 修改觸發器的語法306
12.3.2 修改觸發器的實例308
12.4 刪除觸發器309
12.4.1 刪除觸發器的語法309
12.4.2 刪除觸發器的實例310
12.5 inserted表和Deleted表311
12.6 使用INSERT觸發器312
12.7 使用UPDATE觸發器315
12.8 使用DELETE觸發器318
12.9 練習題320
12.9.1 選擇320
12.9.2 填空321
12.9.3 簡答321
12.9.4 上機321
第13章 游標322
13.1 游標概述322
13.2 聲明游標324
13.2.1 聲明游標的語法324
13.2.2 聲明游標的實例326
13.3 打開和關閉游標327
13.3.1 打開游標327
13.3.2 關閉游標328
13.4 從游標中提取記錄329
13.4.1 FETCH語句329
13.4.2 使用游標提取數據
的實例330
13.5 練習題332
13.5.1 選擇332
13.5.2 填空333
13.5.3 簡答333
13.5.4 上機333
第14章 事務和鎖334
14.1 事務的概念334
14.2 事務的特性335
14.3 事務的分類335
14.4 開始事務336
14.4.1 開始事務語法336
14.4.2 開始事務的實例337
14.5 設定事務保存點338
14.5.1 設定事務保存點的
語法區別338
14.5.2 設定事務保存點的實例339
14.6 提交事務340
14.6.1 提交事務的語法340
14.6.2 提交事務的實例341
14.7 回滾事務342
14.7.1 回滾事務的語法342
14.7.2 回滾事務的實例343
14.8 事務的並發控制344
14.9 事務隔離和隔離級別345
14.10 鎖345
14.10.1 鎖的類型346
14.10.2 死鎖347
14.11 練習題348
14.11.1 選擇348
14.11.2 填空348
14.11.3 簡答348
14.11.4 上機349
第15章 SQL安全350
15.1 SQL安全概述350
15.1.1 SQL Server的安全性350
15.1.2 MySQL的安全性353
15.2 用戶354
15.2.1 創建SQL用戶語法355
15.2.2 創建SQL用戶實例356
15.2.3 刪除SQL伺服器用戶358
15.3 角色359
15.3.1 角色的優點359
15.3.2 創建資料庫角色360
15.3.3 創建資料庫角色實例361
15.3.4 刪除資料庫角色362
15.4 許可權364
15.4.1 許可權的授予語法364
15.4.2 許可權授予的實例368
15.4.3 許可權的撤銷語法370
15.4.4 許可權的撤銷實例372
15.5 練習題374
15.5.1 選擇374
15.5.2 填空374
15.5.3 簡答375
15.5.4 上機375