SQL語法範例大全

SQL語法範例大全

《SQL語法範例大全》是電子工業出版社2008年出版圖書。

基本介紹

  • 書名:SQL語法範例大全
  • 作者:希賽IT發展研究中心、黃少華陳翠娥 編著
  • ISBN:9787121073960 
  • 頁數:724頁
  • 定價:¥89.0元
  • 出版社電子工業出版社
  • 出版時間:2008-11-1
  • 開本:16開
內 容 簡 介,前 言,目 錄,

內 容 簡 介

SQL是關係型資料庫的處理語言,具有強大的處理功能。本書以SQL92標準為重點(部分章節增加了SQL:1999和SQL:2003),全面系統地介紹了SQL語法、功能和特點,並以目前廣泛流行的關係資料庫SQL Server 2005/2008和Oracle 9i/10g/11g為基礎,詳細介紹了各種語法的示例,這些示例都是在實際工作中經常用到的,通俗易懂,具有很強的實用性。
本書擁有完善的體系、全面的方法、詳盡的內容和豐富的實例。本書對SQL92語言、SQL Server和Oracle資料庫的語法進行了對照,可作為手冊查閱。書後附有大量詳細的語法功能函式和語句,並對示例進行了索引,可供讀者進行快速查閱。
本書既可作為各大專院校計算機或相近專業的教材,亦可作為從事程式設計、資料庫管理與開發、系統分析與設計等專業技術人員的參考用書,適用面較廣,適合初、中、高級計算機專業技術人員使用。

前 言

資料庫技術已成為資訊時代計算機技術的重要組成部分,而目前廣泛使用的關係資料庫已經成為資料庫系統的主流,SQL(Structured Query Language,結構化查詢語言)是關係資料庫系統最常用的語言。
本書全面系統地介紹了SQL的基本語法,並以目前流行的資料庫SQL Server 2005/2008和Oracle 9i/10g/11g為基礎,結合作者多年的資料庫系統管理經驗,介紹了用SQL管理和開發這兩大關係資料庫的實際套用操作,包含了大量的套用示例,可供讀者在學習和工作中引用。
本書讀者
本書內容涵蓋了與資料庫系統管理和開發有關的常見內容和操作,非常適合需要使用SQL的各層次的讀者,包括下列使用對象:
(1)SQL的初學者和計算機愛好者
本書講述了SQL大量的基礎內容,又有大量示例,非常適合初學者使用。
(2)高等學校或職業技術學校計算機專業教師和學生
本書講解由淺入深,非常適合高等學校和職業技術學校計算機專業教師和學生學習和參考使用。
(3)資料庫管理及其套用、軟體設計和開發人員
本書介紹了SQL語句在兩種主流關係資料庫SQL Server和Oracle中的實現,同時,介紹了在進行資料庫管理中通常需要的SQL腳本操作,可作為資料庫管理及開發人員的參考手冊。
(4)系統分析人員
資料庫規劃和管理技術是系統分析人員應該掌握的重點內容,本書介紹了各類常見關係資料庫的基礎知識,並分析和比較了它們之間的主要特點和異同點,同時也介紹了SQL在資料庫系統分析中的編程知識,因此該書也可以作為系統分析人員重要的參考資料。
本書特點
(1)結構清晰,內容全面
本書按照關係資料庫基礎、SQL基礎、SQL與關係資料庫的關係、SQL語法、SQL擴展、SQL編程、SQL在資料庫中的套用和資料速查內容為線索進行介紹,採用“方法、語法、示例、運行結果、注意事項”的順序結構進行闡述,具有很強的條理性和易讀性。
(2)方法多樣,實例豐富
本書針對特定的知識點介紹了能實現特定功能的各種方法,包括資料庫的企業管理器工具法、SQL命令法等,目的是讓讀者既能掌握SQL語法知識,又能掌握資料庫的操作技能,而且還能比較同一種功能採用多種實現方法的異同點,掌握在SQL Server和Oracle這兩種資料庫環境下SQL的差別。
本書共包括大小實例721個,使讀者在學習SQL原理的同時能夠掌握其用法,大部分實例還可以用於SQL Server和Oracle資料庫的實際管理,這些實例是作者多年從事資料庫和類UNIX系統管理的經驗積累,具有相當大的使用價值。
(3)既可以作為教材使用,又可以通過手冊進行快速查閱
本書以教材的形式全面系統地介紹了SQL以及SQL Server和Oracle資料庫系統管理的知識點,同時,又在實現方法、SQL語法、SQL語句、SQL函式、資料庫系統參數和套用示例等方面提供了詳細的介紹,並且提供快速索引,方便讀者查閱。
綜上所述,與其他同類書籍相比,本書具有方法全、內容全、實例全、參數全、查閱全的典型特點。
本書內容
本書內容涵蓋了SQL、關係資料庫基本理論、SQL Server資料庫、Oracle資料庫、MS VS.NET等資料庫軟體開發平台和工具的知識點與實際套用操作。
全書包括附錄共分為8大部分,共29章。
第1篇 SQL及關係資料庫概述(第1章~第3章)
第1章 關係資料庫概述。主要介紹了資料庫和關係資料庫的基本概念、關係模型以及兩種關係資料庫:桌面關係資料庫和網路關係資料庫和常用的10種關係型資料庫系統
第2章 SQL概述。介紹了SQL的概念、基本功能、SQL標準和版本、SQL基本語法
第3章 SQL擴展、工具及範例資料庫介紹。介紹了常用的關係資料庫系統SQL Server和Oracle的基本情況及其支持的SQL擴展語言Transact-SQLPL/SQL的基本概念和主要內容。同時介紹了Transact-SQL和PL/SQL的支持環境和常用工具的用法,包括SQLCMD、SQL Server查詢分析、Oracle企業管理器EM、Oracle SQL * Plus、iSQL * Plus、PL/SQL DeveloperTOAD專業工具
第2篇 SQL運算符和函式(第4章~第5章)
第4章 SQL運算符。介紹了SQL的各種操作運算符,包括算術、字元串、賦值、比較、邏輯、集合和一元運算操作符
第5章 函式。介紹了算術、字元、日期、類型轉換、統計(聚合)函式和兩種資料庫的常用系統函式
第3篇 數據查詢操作(第6章~第9章)
第6章 簡單查詢。介紹了SQL查詢語句(SELECT語句)的基本語法結構和執行步驟、常用的簡單查詢操作
第7章 連線查詢。介紹了表的自連線自然連線、內連線和外連線。其中內連線介紹了等值連線和不等值連線兩種基本形式;外連線介紹了左外連線、右外連線和全外連線
第8章 集合查詢。介紹了並集、交集和差集的基本概念和套用操作
第9章 子查詢。介紹了子查詢的基本概念和操作,包括單行、多行、多列、相關和嵌套子查詢等內容
第4篇 數據更新操作(第10章~第15章)
第10章 資料庫操作。介紹了資料庫的創建、查找、修改和刪除的幾種實現方法以及SQL語句操作
第11章 方案操作。介紹了方案的創建、查找、修改和刪除的幾種實現方法以及SQL語句操作
第12章 數據表操作。介紹了數據表、表記錄、表結構的創建、查找、修改、複製和刪除的幾種實現方法以及SQL語句操作
第13章 索引操作。介紹了索引的創建、查找、修改、禁用、啟用和刪除的幾種實現方法以及SQL語句操作
第14章 視圖操作。介紹了視圖的創建、查找、修改和刪除的幾種實現方法以及SQL語句操作
第15章 序列操作。介紹了序列的創建、查找、使用和刪除的幾種實現方法以及SQL語句操作
第5篇 數據安全管理(第16章~第19章)
第16章 完整性約束。介紹了與表有關的約束:NOT NULL約束、UNIQUE約束、PRIMARY KEY約束、FOREIGN KEY約束和CHECK約束、域約束以及斷言的創建、查找、修改、使用和刪除的幾種實現方法以及SQL語句操作
第17章 用戶管理。介紹了用戶的創建、查找、修改、刪除的幾種實現方法和SQL語句操作以及許可權的查找、授權、收回等操作
第18章 角色管理。介紹了角色的創建、查找、修改、刪除的幾種實現方法和SQL語句操作以及許可權的查找、授權、收回等操作
第19章 許可權管理。介紹了許可權的分類、查找、授權、收回等操作
第6篇 SQL編程(第20章~第25章)
第20章 事務控制與並發處理。介紹了事務的概念、事務控制的實現以及多用戶讀寫訪問資料庫的並發控制、事務的開始和終止操作,最後還介紹了在SQL Server和Oracle資料庫中並發控制的具體套用、實現和比較
第21章 存儲過程。介紹了存儲過程的創建、查找、修改、調用、重編譯、刪除的幾種實現方法和SQL語句操作,還詳細介紹了存儲過程在SQL Server和Oracle資料庫中的套用
第22章 存儲函式。介紹了存儲函式的創建、查找、修改、調用、重編譯、刪除的幾種實現方法和SQL語句操作,還詳細介紹了存儲函式在SQL Server和Oracle資料庫中的套用
第23章 觸發器。介紹了SQL中觸發器的有關概念、創建、查找、修改、禁用、啟用和刪除的幾種實現方法以及SQL語句操作,還詳細介紹了觸發器在SQL Server和Oracle資料庫中的套用
第24章 游標。介紹了SQL中游標的基本概念、各種游標的定義、查找、打開、數據提取、關閉和刪除的幾種實現方法以及SQL語句操作、游標循環和嵌套的具體內容,還詳細介紹了游標在SQL Server和Oracle資料庫中的套用
第25章 錯誤和異常處理。介紹了錯誤與異常分類、SQL Server和Oracle資料庫中的錯誤與異常處理
第7篇 SQL在資料庫開發和管理中的套用(第26章~第29章)
第26章 嵌入式SQL。介紹了嵌入式SQL的基本概念、原理、與高級語言的通信方法、動態SQL技術,還詳細介紹了利用C語言中嵌入SQL語句在VC++、VC#中訪問SQL Server和Oracle的連線訪問實現過程
第27章 資料庫的存取訪問技術。介紹了資料庫系統的開發環境、套用系統的典型結構、各種資料庫軟體開發平台和工具、MS VS.NET和J2EE兩種流行的開發平台的比較、資料庫的連線訪問技術,包括OLE-DB、ODBC、JDBC、ADO、ADO.NET。還詳細介紹了用ASPASP.NETVB.NET、VC#.NET與TEXT、Excel檔案以及Access、SQL Server、Oracle資料庫連線的訪問方法
第28章 用SQL管理SQL Server資料庫。介紹了用SQL結合SQL Server資料庫的系統表和系統存儲過程管理SQL Server資料庫及伺服器的屬性、資料庫對象以及賬戶、角色和許可權等內容
第29章 用SQL管理Oracle資料庫。介紹了用SQL管理Oracle資料庫及伺服器的屬性、資料庫連線、會話、進程、表空間和數據檔案、數據表、索引、存儲過程、存儲函式、觸發器、用戶、角色、許可權、事務與鎖和記憶體參數等內容
第8篇 附錄(附錄A~附錄E)
為便於讀者對常用資料的查閱,特將下列內容作為附錄內容進行了收集和整理:
 SQL常用語句分類索引
 SQL、SQL Server、Oracle常用函式分類對照索引
 SQL Server常用系統表和系統存儲過程索引
Oracle資料庫常用視圖索引
 Oracle資料庫系統環境變數參數
技術支持
希賽是中國領先的網際網路技術和IT教育公司,在網際網路服務、圖書出版、人才培養方面,希賽始終保持IT業界的領先地位。希賽對國家信息化建設和軟體產業化發展具有強烈的使命感,利用希賽網(www.csai.cn)強大的平台優勢,加強與促進IT人士之間的信息交流和共享,實現IT價值。“希賽,影響IT”是全體希賽人不懈努力和追求的目標!
希賽網以希賽顧問團為技術依託,是中國最大的IT資源平台。希賽IT教育研發中心是希賽公司下屬的一個專門從事IT教育、教育產品開發、教育書籍編寫的部門,在IT教育方面具有極高的權威性。在國家權威機構發布的《計算機圖書出版市場綜述》中,稱讚希賽叢書為讀者所稱道,希賽的圖書已經形成品牌,在讀者心目中具有良好的形象。
有關本書的意見反饋和諮詢,讀者可在學賽網社區“書評線上”版塊中與作者進行交流,讀者也可就書中的問題提出意見,由於作者水平有限,錯誤在所難免,望讀者不吝賜教。
本書由黃少華和陳翠娥編著,鄧子云主審。同時,希賽公司梁賽編輯提供了許多的幫助。還有劉健等幾位好友也提供了支持和很好的參考意見,在此一併表示衷心的感謝。
編者 著
2008年8月

目 錄

第1篇 SQL及關係資料庫概述
第1章 關係資料庫概述 2
1.1 資料庫的基本概念 3
1.1.1 資料庫的發展 3
1.1.2 資料庫系統組成 3
1.1.3 數據處理的抽象描述 3
1.1.4 數據模型 4
1.2 關係資料庫基本概念 4
1.2.1 關係模式 4
1.2.2 關係模型的特點及組成 5
1.2.3 關係數據語言的種類 6
1.2.4 域 7
1.2.5 笛卡兒積 7
1.2.6 關係 8
1.2.7 全關係系統十二準則 9
1.2.8 規範化(NF範式) 9
1.3 關係資料庫類型 10
1.3.1 桌面資料庫 10
1.4 常用關係資料庫介紹 10
1.4.1 Microsoft Access 11
1.4.2 FoxPro 11
1.4.3 MySQL 11
1.4.4 Firebird 12
1.4.5 PostgreSQL 13
1.4.6 Informix 14
1.4.7 DB2 14
1.4.8 Sybase 15
1.4.9 SQL Server 17
1.4.10 Oracle 22
1.5 小結 29
第2章 SQL概述 30
2.1 SQL的功能和特性 31
2.2 SQL語法分類 32
2.3 SQL標準與版本 32
2.3.1 SQL92標準 33
2.3.2 SQL99標準 33
2.3.3 SQL:2003標準 34
2.4 SQL表達式 34
2.5 SQL標識符 34
2.5.1 特殊字元(語法約定) 34
2.5.2 注釋字元 35
2.6 SQL常量 35
2.7 SQL變數 37
2.8.3 日期數據類型 38
2.8.4 其他數據類型 39
2.9 SQL語句 40
2.9.1 SQL語句分類 40
2.9.2 SELECT查詢語句 41
2.10 SQL語句的執行方法 42
2.11 SQL與關係資料庫 42
2.12 SQL的發展 42
2.13 小結 42
第3章 SQL擴展、工具及範例資料庫介紹 44
3.1 T-SQL 46
3.1.1 注釋語句 46
3.1.2 常量 46
3.1.3 變數 46
3.1.4 運算符 47
3.1.5 數據類型 48
3.1.6 函式 49
3.1.7 流程控制語句 49
3.2 PL/SQL 50
3.2.1 注釋語句 50
3.2.2 數據類型 51
3.2.3 SQL92、T-SQL、PL/SQL數據
類型比較 51
3.2.4 運算符 52
3.2.5 函式 52
3.2.6 PL/SQL與T-SQL函式比較 53
3.2.7 常量和變數 53
3.2.8 流程控制語句 54
3.3 SQLCMD工具 55
3.4 SQL Server查詢分析工具 57
3.5 Oracle企業管理器EM工具 58
3.6 Oracle SQL * Plus工具 60
3.6.1 SQL*Plus的主要功能 60
3.6.2 SQL*Plus啟動和快速登錄
方法 61
3.6.3 SQL*Plus常用命令操作 62
3.6.4 iSQL * Plus 70
3.7 PL/SQL Developer工具 72
3.7.1 主要功能特性 72
3.7.2 軟體資源 74
3.7.3 基本用法 74
3.8 TOAD工具 76
3.8.1 主要功能特性 76
3.8.2 軟體資源 77
3.8.3 基本用法 77
3.9 範例資料庫介紹 80
3.9.1 SQL Server學籍管理資料庫 80
3.9.2 SQL Server系統示例庫 84
3.9.3 Oracle系統示例庫 84
3.10 本章小結 90
第2篇 SQL運算符和函式
第4章 SQL運算符 92
4.3 字元串串聯運算符 94
4.3.1 加號“+” 94
4.3.2 雙豎號“||” 94
4.5 邏輯運算符 95
4.7 集合運算符 96
4.7.1 UNION運算符 96
4.7.2 EXCEPT運算符 96
4.7.3 INTERSECT運算符 97
4.9 SQL92、SQL Server和Oracle運算符
比較 97
4.10 小結 99
第5章 函式 100
5.1 數值函式 102
5.4 數據類型轉換函式 106
5.4.1 CAST ()函式 106
5.4.2 CONVERT () 函式 107
5.5 統計函式 109
5.5.1 SUM ()求和 110
5.5.2 COUNT ()計數 110
5.5.3 MAX () /MIN ()求最大/
最小值 111
5.5.4 AVG ()求均值 112
5.5.5 VAR () /VARP () 求方差 113
5.5.6 STDEV () /STDEVP ()求標準
誤差 113
5.5.7 使用DISTINCT關鍵字進行
重值篩選 114
5.6 小結 114
第3篇 數據查詢操作
第6章 簡單查詢 116
6.1 用SELECT子句選擇列表 118
6.1.1 選擇列 119
6.1.2 更改列標題 119
6.1.3 使用TOP限制選擇行數 120
6.1.4 DISTINCT去掉重複的欄位
數據 121
6.1.5 DISTINCTROW去掉重複的
記錄數據 122
6.2 FROM子句 122
6.2.1 對具有相同列名的兩個表
進行查詢 123
6.2.2 從查詢結果集合中查詢數據 123
6.3 WHERE子句 123
6.3.1 使用比較運算符指定查詢
條件 124
6.3.2 使用邏輯運算符指定查詢
條件 124
6.3.3 使用範圍BETWEEN指定
查詢條件 125
6.3.4 使用列表IN指定查詢條件 125
6.3.5 使用LIKE與通配符指定查詢
條件 125
6.3.6 NULL空值的判斷 126
6.3.7 使用包含判斷詞EXISTS
ALL、ANY、SOME 126
6.4 GROUP BY子句 130
6.4.1 一般情況的分組查詢 131
6.4.2 GROUP BY子句根據多列組
合行 132
6.4.3 CUBE和ROLLUP運算符及
使用 132
6.4.4 GROUP BY子句中的NULL
值處理 133
6.5 HAVING子句 134
6.5.1 HAVING子句的一般套用 134
6.5.2 HAVING與WHERE子句的
區別 135
6.5.3 HAVING子句單獨使用 136
6.5.4 HAVING子句與CASE語句
結合使用 137
6.6 ORDER BY子句 137
6.6.1 ORDER BY子句的使用 137
6.6.2 ORDER BY子句的約束 139
6.7 小結 139
第7章 連線查詢 141
7.1 連線概述 143
7.1.1 連線範圍 143
7.1.2 連線類型 143
7.1.3 笛卡兒積 143
7.1.4 連線語法 144
7.1.5 連線運算符 144
7.2 自(身)連線 144
7.3 內連線(INNER JOIN) 145
7.3.1 等值連線 145
7.3.2 不等連線 146
7.3.3 自然連線 147
7.4 外連線 148
7.4.1 左外連線(LEFT JOIN) 148
7.4.2 右外連線(RIGHT JOIN) 149
7.4.3 全外連線(FULL JOIN) 150
7.5 交叉連線(CROSS JOIN) 151
7.6 小結 151
第8章 集合查詢 153
8.1 集合概念 155
8.2 集合性質 155
8.3 集合運算 155
8.4 UNION運算符 156
8.4.1 使用UNION進行表內查詢 156
8.4.2 使用UNION進行多表查詢 157
8.4.3 使用UNION JOIN連線查詢 158
8.5 INTERSECT運算符 159
8.6 EXCEPT運算符 159
8.7 小結 160
第9章 子查詢 161
9.1 概述 163
9.1.1 子查詢定義 163
9.1.2 子查詢語法 163
9.1.3 子查詢的兩種基本形式 164
9.1.4 子查詢的優點 165
9.1.5 子查詢分類 165
9.1.6 子查詢中的比較運算符與謂詞 165
9.1.7 使用子查詢的規則 168
9.2 單行子查詢 169
9.3 多行子查詢 170
9.3.1 在多行子查詢中使用IN比較符 170
9.3.2 在多行子查詢中使用ALL、SOME、ANY比較符 171
9.4 多列子查詢 172
9.5 相關子查詢 173
9.5.1 使用單行比較運算符引入相關子查詢 174
9.5.2 使用IN引入相關子查詢 174
9.5.3 在子查詢中使用[NOT] EXISTS 175
9.6 在各類SQL語句中使用子查詢 177
9.6.1 在SELECT子句中使用子查詢 177
9.6.2 在FROM子句中使用子查詢 177
9.6.3 在WHERE子句中使用子查詢 177
9.6.4 在GROUP BY子句中使用子查詢 178
9.6.5 在HAVING子句中使用子查詢 178
9.6.6 在CREATE TABLE語句中使用子查詢 178
9.6.7 在CREATE VIEW語句中使用子查詢 179
9.6.8 在INSERT INTO子句中使用子查詢 180
9.6.9 在UPDATE語句中使用子查詢 181
9.6.10 在DELETE語句中使用子查詢 182
9.6.11 使用WITH子句重用子查詢 182
9.7 樹查詢 183
9.8 小結 184
第4篇 數據更新操作
第10章 資料庫操作 186
10.1 創建資料庫 188
10.2 查看資料庫信息 193
10.3 更改資料庫 193
10.3.1 更改資料庫名稱 195
10.3.2 修改資料庫檔案 195
10.3.3 更改資料庫屬性 200
10.4 刪除資料庫 201
10.5 小結 201
第11章 方案操作 202
11.1 方案概述 204
11.2 查找方案 204
11.3 創建方案 204
11.4 更改方案 206
11.5 刪除方案 206
11.6 小結 207
第12章 數據表操作 208
12.1 創建表 210
12.2 複製表 211
12.3 修改表結構 212
12.3.1 增加列和約束 212
12.3.2 查找列約束 214
12.3.3 修改列和約束 214
12.3.4 刪除列和約束 215
12.4 行記錄操作 215
12.4.1 插入記錄 215
12.4.2 修改記錄 218
12.4.3 刪除記錄(DELETE) 223
12.4.4 刪除記錄(TRUNCATE) 225
12.5 重命名表 226
12.6 刪除表 226
12.7 MERGE語句 226
12.8 小結 228
第13章 索引操作 229
13.1 索引的分類 231
13.1.1 索引的概念 231
13.1.2 索引分類 231
13.2 索引使用的場所 232
13.3 查看索引 233
13.4 創建索引 234
13.4.1 創建索引的方法 234
13.4.2 CREATE INDEX語法 234
13.4.3 創建聚簇索引 236
13.4.4 創建非聚簇索引 236
13.4.5 創建簡單列索引 236
13.4.6 創建組合列索引 237
13.4.7 創建普通索引 238
13.4.8 創建唯一索引 238
13.4.9 創建視圖索引 241
13.5 修改索引 242
13.6 禁用/啟用索引 245
13.7 刪除索引 245
13.8 小結 246
第14章 視圖操作 248
14.1 查詢視圖 250
14.2 創建視圖 251
14.3 修改視圖 255
14.4 刪除視圖 256
14.5 小結 257
第15章 序列操作 258
15.1 創建序列 260
15.2 查找序列值 260
15.3 使用序列 261
15.4 修改序列 261
15.5 刪除序列 262
15.6 小結 262
第5篇 數據安全管理
第16章 完整性約束 264
16.1 資料庫的安全性 266
16.2 完整性約束分類 267
16.3 表約束 268
16.3.1 DEFAULT約束 268
16.3.2 NOT NULL約束 269
16.3.3 CHECK約束 269
16.3.4 UNIQUE約束 270
16.3.5 PRIMARY KEY約束 270
16.3.6 FOREIGN KEY約束 271
16.3.7 FOREIGN KEY的MATCH
約束 272
16.4 域約束 273
16.5 斷言 273
16.6 禁止與啟用約束 274
16.7 查看約束 275
16.8 刪除約束DROP 275
16.9 小結 275
第17章 用戶管理 277
17.1 查找用戶及相關信息 279
17.2 創建用戶 282
17.3 修改用戶 285
17.4 刪除用戶 286
17.5 小結 286
第18章 角色管理 288
18.1 角色的概念 290
18.2 查找角色 290
18.3 創建角色 293
18.4 更改角色 295
18.5 刪除角色 295
18.6 小結 295
第19章 許可權管理 297
19.1 許可權分類 299
19.2 查看許可權 299
19.3 授予許可權 303
19.3.1 授予ALL許可權 304
19.3.2 授予SELECT許可權 304
19.3.3 授予CREATE許可權 304
19.3.4 授予INSERT許可權 305
19.3.5 授予UPDATE列許可權 305
19.3.6 授予ALTER許可權 305
19.3.7 授予EXECUTE許可權 306
19.3.8 授予REFERENCES許可權 306
19.3.9 授予DELETE許可權 306
19.3.10 授予DROP許可權 306
19.3.11 授予用戶角色的許可權 307
19.4 收回許可權 308
19.5 小結 309
第6篇 SQL編程
第20章 事務控制與並發處理 312
20.1 事務的基本概念 314
20.2 鎖的基本概念和分類 314
20.3 事務的並發控制 318
20.3.1 並發控制方法 319
20.3.3 事務特性的設定 321
20.4 事務開始和終止 322
20.5 資料庫讀寫訪問操作 322
20.6 事務提交 322
20.7 事務回滾 323
20.8 SQL Server與Oracle事務處理
比較 324
20.9 小結 324
第21章 存儲過程 326
21.1 存儲過程的概念 329
21.2 存儲過程的優點 329
21.3 存儲過程分類 329
21.4 SQL Server存儲過程中的控制語句 330
21.4.1 注釋語句 330
21.4.2 螢幕輸出語句 330
21.4.3 變數定義和使用語句 330
21.4.4 塊語句 331
21.4.5 判斷語句 331
21.4.6 循環語句 332
21.4.7 轉向定位語句 333
21.4.8 定時執行語句 333
21.4.9 錯誤捕獲語句 333
21.5 Oracle存儲過程中的控制語句 333
21.5.1 注釋語句 334
21.5.2 螢幕輸出語句 334
21.5.3 變數和常量的定義和使用 334
21.5.4 塊語句BEGIN…END 337
21.5.5 判斷語句IF、CASE 338
21.5.6 循環語句 340
21.5.7 轉向定位語句 342
21.5.8 定時執行作業任務dbms_job 342
21.5.9 錯誤捕獲語句 346
21.6 存儲過程的創建 346
21.6.1 創建存儲過程的語法 346
21.6.2 創建無參數的存儲過程 347
21.6.3 創建有參數的存儲過程 347
21.7 存儲過程的調用與執行 349
21.7.1 RETURN語句及返回值 350
21.7.2 存儲過程的創建和調用步驟 351
21.7.3 存儲過程調用方法和步驟 352
21.7.4 調用無參數的過程 352
21.7.5 調用有參數的過程 352
21.8 存儲過程的查看 354
21.8.1 查看SQL Server存儲過程 354
21.8.2 查看Oracle存儲過程 356
21.9 存儲過程的修改和重編譯 359
21.9.1 修改存儲過程 360
21.9.2 重命名存儲過程 360
21.9.3 存儲過程的重編譯 361
21.10 存儲過程的刪除 364
21.11 SQL Server中幾個重要的存儲
過程介紹 365
21.11.1 sp_attach_db 366
21.11.2 sp_attach_single_file_db 366
21.11.3 sp_changedbowner 367
21.11.4 sp_changeobjectowner 367
21.11.5 sp_configure 368
21.11.6 xp_cmdshell 370
21.11.7 sp_spaceused 373
21.11.8 sp_msforeachtable 374
21.12 存儲過程套用實例 374
21.12.1 用存儲過程實現數據表更新
操作 374
21.12.2 用存儲過程實現數據備份與
恢復 376
21.13 小結 377
第22章 存儲函式 379
22.1 存儲函式和存儲過程的區別 381
22.2 存儲函式的類型和約定 381
22.3 存儲函式的創建和調用 383
22.3.1 存儲函式創建語法 385
22.3.2 存儲函式調用類型、方法和
語法 387
22.3.3 SQL Server存儲函式的創建
和調用 387
22.3.4 Oracle存儲函式的創建和
調用 390
22.4 存儲函式的更改 396
22.5 存儲函式的編譯 397
22.6 存儲函式信息的查看 397
22.6.1 查看SQL Server存儲函式 398
22.6.2 查看Oracle存儲函式 399
22.7 存儲函式的刪除 401
22.8 小結 402
第23章 觸發器 404
23.1 觸發器概述 406
23.1.1 觸發器的基本概念 406
23.1.2 觸發器的用途和優勢 407
23.1.3 觸發器的類型 408
23.1.4 觸發器中的兩個臨時表 409
23.2 創建SQL Server觸發器 409
23.2.1 創建DML觸發器 410
23.2.2 創建DDL觸發器 420
23.2.3 創建INSTEAD OF觸發器 423
23.2.4 創建嵌套觸發器 426
23.2.5 創建遞歸觸發器 428
23.3 創建Oracle觸發器 430
23.3.1 觸發謂詞的使用 431
23.3.2 創建DML語句觸發器 432
23.3.3 創建DML行觸發器 435
23.3.4 創建DDL觸發器 438
23.3.5 創建INSTERD OF觸發器 439
23.3.6 創建事件觸發器 441
23.4 更改觸發器 444
23.5 重新編譯Oracle觸發器 446
23.6 禁止和啟用觸發器 446
23.7 查看觸發器信息 447
23.7.1 查看SQL Server觸發器 447
23.7.2 查看Oracle觸發器 449
23.8 刪除觸發器 451
23.9 本章小結 453
第24章 游標 455
24.1 游標的基本概念 457
24.1.1 游標的基本原理 457
24.1.2 游標的內容構成 457
24.1.3 游標的類型 457
24.1.4 游標變數 461
24.2 游標操作 462
24.2.1 申明游標 462
24.2.2 打開游標 463
24.2.3 讀取數據 464
24.2.4 關閉游標CLOSE 469
24.2.5 刪除游標 469
24.3 查看游標 470
24.3.1 查看SQL Server游標 470
24.3.2 查看Oracle游標 475
24.4 游標循環 476
24.5 參數游標 478
24.6 游標嵌套 479
24.7 游標套用 479
24.8 小結 483
第25章 錯誤和異常處理 486
25.1 錯誤和異常分類 488
25.2 SQL Server錯誤和異常處理 488
25.2.1 錯誤信息及存儲 488
25.2.2 錯誤捕獲方法 488
25.3 Oracle錯誤和異常處理 492
25.3.1 異常處理方法 492
25.3.2 異常處理語法 492
25.3.3 預定義異常處理 493
25.3.4 非預定義異常處理 494
25.3.5 自定義異常處理 495
25.4 小結 496
第7篇 SQL在資料庫開發和
管理中的套用
第26章 嵌入式SQL 498
26.1 ESQL基本概念 500
26.2 SQL的使用方法 500
26.3 ESQL語句和宿主語言之間的通信
方法 502
26.3.1 使用SQL通信區通信 503
26.3.2 使用主變數通信 503
26.3.3 使用游標通信 506
26.4 ESQL的編譯處理過程 507
26.5 使用WHENEVER語句簡化錯誤
處理 507
26.6 在高級語言中嵌入SQL 509
26.6.1 ESQL的語法格式 509
26.6.2 在Visual C++下執行ESQL
語句 509
26.6.3 在Visual C#中執行嵌入式
T-SQL語句 511
26.7 在資料庫管理系統中嵌入SQL 513
26.7.1 ESQL語句與T-SQL和
PL/SQL語句的比較 513
26.7.2 在SQL Server中使用嵌入式
SQL 514
26.7.3 在Oracle中嵌入SQL 517
26.8 動態SQL技術 524
26.8.1 動態SQL的基本概念 524
26.8.2 SQL Server動態SQL語句的處理 525
26.8.3 Oracle動態SQL語句的處理 527
26.9 小結 532
第27章 資料庫的存取訪問技術 534
27.1 資料庫系統的開發環境 536
27.2 套用系統的典型結構 536
27.3 開發平台和工具 538
27.3.1 Power Builder 538
27.3.2 Delphi 539
27.3.3 Oracle Developer Suite 539
27.3.4 .NET 540
27.3.5 J2EE 542
27.3.6 .NET和J2EE比較 543
27.4 資料庫的連線訪問技術 543
27.4.1 OLE DB 543
27.4.2 ODBC 545
27.4.3 JDBC 547
27.4.4 ADO 549
27.4.5 ADO.NET 556
27.4.6 Recordset對象方法的使用 561
27.5 ASP/ASP.NET與資料庫的連線和訪問 562
27.5.1 ASP/ASP.NET與Text 563
27.5.2 ASP/ASP.NET與Excel 563
27.5.3 ASP/ASP.NET與Access 564
27.5.4 ASP/ASP.NET與SQLServer 564
27.5.5 ASP/ASP.NET與Oracle 565
27.6 VB.NET與資料庫的連線和訪問 566
27.6.1 VB.NET與Text 566
27.6.2 VB.NET與Excel 566
27.6.3 VB.NET與Access 567
27.6.4 VB.NET與SQL Server 568
27.6.5 VB.NET與Oracle 568
27.7 VC#.NET與資料庫的連線和訪問 569
27.7.1 VC#.NET與Excel 569
27.7.2 VC#.NET與Access 570
27.7.3 VC#.NET與SQL Server 571
27.7.4 VC#.NET與Oracle 572
27.8 小結 572
第28章 用SQL管理SQL Server資料庫 573
28.1 作業系統管理 576
28.1.1 查看伺服器屬性和作業系統參數 576
28.1.2 查看磁碟目錄和檔案信息 577
28.1.3 查看存儲介質與磁碟分區信息 578
28.1.4 查看伺服器提供的服務組件與程式 579
28.2 DBMS管理 579
28.2.1 查看資料庫服務屬性 579
28.2.2 查看資料庫系統版本及配置參數 580
28.2.3 查看和修改資料庫屬性 580
28.2.4 查看資料庫檔案和檔案組屬性 582
28.2.5 查看當前資料庫重要的數據對象 582
28.2.6 查看資料庫日誌 583
28.3 用戶對象、許可權與安全管理 584
28.3.1 查看資料庫角色 584
28.3.2 查看和管理資料庫用戶 585
28.3.3 查看有關許可權 586
28.3.4 查看和管理用戶的數據對象 587
28.3.5 查看和管理進程 590
28.3.6 查看資料庫鎖 591
28.3.7 資料庫備份和恢復 593
28.4 小結 597
第29章 用SQL管理Oracle資料庫 599
29.1 系統管理 606
29.1.1 查看資料庫系統屬性 606
29.1.2 查看所有資料庫對象的屬性 607
29.1.3 查看和修改當前資料庫的字元集 608
29.1.4 查看資料庫檔案的屬性 609
29.1.5 查看和設定資料庫歸檔信息 609
29.1.6 查看資料庫的數據字典 611
29.1.7 查看資料庫的後台進程 612
29.1.8 查看和修改系統的當前時間 612
29.1.9 查看SCN和MTS 613
29.2 連線、會話與進程管理 614
29.2.1 查看資料庫的並發連線會話數 614
29.2.2 查看客戶端連線會話信息 614
29.2.3 查看會話進程及客戶端信息 617
29.3 表空間和數據檔案管理 619
29.3.1 查看錶空間信息 619
29.3.2 查看錶空間的數據檔案和容量統計信息 620
29.3.3 查看數據對象所占用的表空間信息 622
29.3.4 查看錶空間的碎片 623
29.3.5 查看數據檔案信息 624
29.3.6 查看日誌組信息 625
29.3.7 查看競爭與等待信息 626
29.3.8 查看TRACE腳本檔案 628
29.4 回滾段管理 628
29.4.1 查看回滾段的屬性 628
29.4.2 查看用戶與會話正在使用的回滾段 631
29.5 數據表管理 631
29.5.1 查看數據表的基本屬性 631
29.5.2 查看錶的存儲信息 632
29.5.3 查看錶的約束與關聯信息 634
29.5.4 表記錄管理 636
29.6 索引管理 637
29.6.1 查看索引屬性 637
29.6.2 查看用戶的索引信息 637
29.6.3 查看索引的存儲屬性 638
29.6.4 對欄位進行全文檢索 638
29.7 存儲過程、存儲函式和觸發器管理 639
29.7.1 查看存儲過程和函式的狀態信息 639
29.7.2 查看觸發器、過程、函式的創建腳本 639
29.8 查看運行的SQL語句 640
29.8.1 查看進程所對應的SQL語句 640
29.8.2 查看用戶正在運行的SQL語句 642
29.8.3 查看Disk Read最高的SQL語句 642
29.8.4 查看回滾段里正在運行的SQL語句 643
29.8.5 查看視圖對應的SQL語句 643
29.8.6 查看SQL語句的執行情況 643
29.9 角色、用戶與安全管理 643
29.9.1 查看資料庫角色信息 644
29.9.2 查看資料庫用戶信息 644
29.9.3 查看用戶對象和類型 646
29.9.4 查看有關授權信息 649
29.9.5 查看數據備份和恢覆信息 650
29.10 鎖管理 651
29.10.1 查看鎖 651
29.10.2 查看被鎖的進程及鎖類型信息 654
29.10.3 查看被鎖定的資料庫對象 655
29.10.4 查看鎖定對象的客戶端信息 656
29.10.5 解鎖操作 656
29.11 參數調整與性能最佳化 657
29.11.1 查看資料庫伺服器參數 658
29.11.2 查看客戶端參數 659
29.11.3 查看會話環境參數 659
29.11.4 查看inin.ora參數 659
29.11.5 查看NLS參數 659
29.11.6 查看SGA 660
29.11.7 查看PGA 670
29.11.8 查看排序區 670
29.11.9 查看Large Pool 671
29.11.10 查看Java語言區 671
29.11.11 查看UGA區 671
29.11.12 查看CPU資源 671
29.11.13 查看I/O資源的使用情況 672
29.11.14 查看等待與競爭 673
29.11.15 SQL語句最佳化 676
29.12 小結 678
第8篇 附錄
附錄A SQL常用語句分類索引 680
附錄B SQL、SQL Server、Oracle常用函式分類對照索引 683
附錄C SQL Server常用系統表和系統存儲過程索引 689
附錄D Oracle資料庫常用視圖索引 696
附錄E Oracle資料庫系統環境變數參數 700

相關詞條

熱門詞條

聯絡我們