SQL寶典

SQL寶典

《SQL寶典》是美國克力吉爾於2003年所著的一本SQL資料庫參考書。其主要內容包括:SQL的基本概念和原理、創建和修改資料庫對象、數據操作和事務控制、檢索和轉換數據、利用系統目錄來實現安全、超越SQL:過程化程式設計和資料庫訪問機制等內容。附錄中介紹了本書附帶光碟的內容及大量的對讀者極有價值的參考資料。它包含了經核准的最新的SQL規範SQL99,以它的標準格式,可以把本書中的代碼和技術套用到來自任何主要開發商的SQL資料庫中,這些資料庫包括Microsoft SQL Server,Oracle以及IBM DB2。

基本信息

內容提要

現在拿到的這本書,是有關SQL的可用的最新最完整的參考。它包含了經核准的最新的SQL規範SQL99,以它的標準格式,可以把本書中的代碼和技術套用到來自任何主要開發商的SQL資料庫中,這些資料庫包括Microsoft SQL Server,Oracle以及IBM DB2。因為作者強調的是標準的SQL,因此,可以執行不同的資料庫應用程式,並可以確信這些代碼將在任何主要的開發商提供的產品中都能工作得很好。無論是一位準備嘗試資料庫編程的資料庫管理員,還是一位有經驗的希望查找有關SQL99內容的資料庫程式設計師,都將發現《SQL寶典》是完整的解決方案。 本書的主要內容包括:SQL的基本概念和原理、創建和修改資料庫對象、數據操作和事務控制、檢索和轉換數據、利用系統目錄來實現安全、超越SQL:過程化程式設計和資料庫訪問機制等內容。附錄中介紹了本書附帶光碟的內容及大量的對讀者極有價值的參考資料。 本書適用於廣泛使用SQL的讀者,從初級到高級的讀者都有參考價值。

編輯推薦

本書的主要內容包括:SQL的基本概念和原理、創造和修改資料庫對象、數據操作和事務控制、檢索和轉換數據、利用系統目錄來實現安全、超越SQL:過程化程式設計和資料庫訪問機制等內容。附錄中介紹了本書附帶光碟的內容及大量的對讀者極有價值的參考資料。

本書適用於廣泛使用SQL的讀者,從初級到高級的讀者都有參考價值。

目錄

目 錄

前言 1

第1部分SQL的基本概念和原理 5

第1章SQL和關係型資料庫管理系統 7

1.1理想的資料庫特徵 7

1.1.1充足的容量 7

1.1.2足夠的安全 8

1.1.3多用戶環境 8

1.1.4效率 8

1.1.5可伸縮性 8

1.1.6用戶友好 8

1.2選擇資料庫軟體 9

1.2.1市場份額 9

1.2.2所有權的總成本 9

1.2.3支持和持續 10

1.3一切的細節:DBMS實現 10

1.4現實中的資料庫例子 11

1.4.1訂購管理系統資料庫 11

1.4.2健康護理提供者資料庫 12

1.4.3科學資料庫 12

1.4.4非盈利組織資料庫 13

1.5舊有資料庫 13

1.5.1平面檔案資料庫 13

1.5.2層次資料庫14

1.5.3網狀資料庫15

1.6關係型資料庫 16

1.6.1表 16

1.6.2關係 17

1.6.3主鍵 18

1.6.4外鍵 18

1.6.5RDBMS的發展 19

1.7對象資料庫和對象關係型資料庫模型 19

1.8SQL和SQL標準簡史 20

1.8.1卑微的開始:RDBMS和SQL的演變 20

1.8.2SQL標準簡史 22

1.9小結 24

第2章SQL基本概念和原理 25

2.1SQL標準回顧 25

2.2SQL初探 28

2.2.1資料庫範例 28

2.2.2獲取和導出數據 29

2.2.3從不同的角度查看數據 31

2.2.4聚合 32

2.2.5數據安全 33

2.2.6從客戶端應用程式訪問數據 34

2.2.7新的發展 34

2.3平台無關性 35

2.4小結 37

第3章SQL數據類型39

3.1字元串與二進制串 40

3.1.1字元串 40

3.1.2二進制串 46

3.2數字 48

3.2.1精確的數字 48

3.2.2近似的數字 51

3.3日期和時間數據類型 52

3.3.1複雜數據類型入門 52

3.3.2日期和時間實現 53

3.4對象和用戶定義的數據類型 58

3.4.1SQL99 59

3.4.2Oracle9i 59

3.4.3DB2UDB8.1 61

3.5其他數據類型 62

3.5.1BOOLEAN 62

3.5.2ROWID 63

3.5.3UROWID 63

3.5.4BFILE 63

3.5.5DATALINK 63

3.5.6BIT 63

3.5.7TIMESTAMP 63

3.6NULL 64

3.7小結 64

第2部分創建和修改資料庫對象 65

第4章創建RDBMS對象 67

4.1表 67

4.1.1CREATETABLE語句 68

4.2索引 88

4.2.1CREATEINDEX語句 90

4.3視圖 93

4.3.1CREATEVIEW語句 93

4.3.2創建複雜視圖 98

4.4別名和同義詞 100

4.4.1SQL99 102

4.4.2Oracle9i的CREATEsynonym語句 102

4.4.3DB2UDB8.1的CREATEALIAS/SYNONYM語句 103

4.4.4MSSQLServer2000 103

4.5模式 103

4.5.1CREATESCHEMA語句 103

4.6其他SQL99和實現專有的對象 107

4.6.1SQL99中的域 107

4.6.2表空間和檔案組 107

4.6.3序列 109

4.6.4物化視圖(Oracle9i) 114

4.6.5資料庫連結(Oracle9i) 115

4.7CREATE語句交叉參考 116

4.8小結 118

第5章修改和刪除RDBMS對象 119

5.1表 119

5.1.1ALTERTABLE語句 119

5.1.2DROPTABLE語句 127

5.2索引 129

5.2.1Oracle9i中的ALTERINDEX語句 129

5.2.2DROPINDEX語句 130

5.3視圖 131

5.3.1ALTERVIEW語句 131

5.3.2DROPVIEW語句 132

5.4別名和同義詞 133

5.5模式 134

5.6其他實現專有的對象 134

5.6.1表空間 134

5.6.2序列 136

5.7ALTER和DROP語句交叉參考 137

5.8小結 139

第3部分數據操作和事務控制 141

第6章數據操作語言 143

6.1INSERT:用數據來填充表 143

6.1.1一般的INSERT語句子句 144

6.1.2與開發商有關的特殊的INSERT語句 151

6.2UPDATE:更新表的數據 155

6.2.1一般的UPDATE語句子句 156

6.2.2開發商特有的UPDATE語句細節 159

6.3DELETE:從表中刪除數據 160

6.3.1一般的DELETE語句子句 161

6.3.2開發商特有的DELETE語句子句 163

6.4其他用於運算元據的SQL語句 163

6.4.1MERGE語句 163

6.4.2TRUNCATE語句 164

6.5小結 165

第7章會話.事務和鎖定 167

7.1會話 167

7.2事務 174

7.2.1什麼是一個事務 174

7.2.2事務的COMMIT和ROLLBACK 175

7.2.3事務隔離級別180

7.3理解鎖定 182

7.3.1鎖定模式 183

7.3.2處理死鎖 185

7.4小結 186

第4部分檢索和轉換數據 187

第8章理解SELECT語句 189

8.1單一表SELECT語句語法 189

8.2SELECT子句:到底要選擇什麼 190

8.2.1單一列選擇 190

8.2.2多列SELECT 190

8.2.3使用字面值.函式和計算列 193

8.2.4在一個SELECT子句中使用子查詢 197

8.3FROM子句 198

8.3.1從表和視圖中選擇 198

8.3.2在一個FROM子句中使用別名 198

8.3.3在一個FROM子句中使用子查詢 199

8.4WHERE子句:設定水平限制 200

8.4.1使用比較運算符 200

8.4.2複合運算符:使用AND和OR 201

8.4.3使用BETWEEN運算符 202

8.4.4使用IN運算符:設定成員資格測試 203

8.4.5使用ISNULL運算符:針對NULL的專門測試 204

8.4.6在一個WHERE子句中使用子查詢 205

8.5GROUPBY和HAVING子句:匯總結果 208

8.6ORDERBY子句:排序查詢的輸出 211

8.7聯合多個查詢的結果 214

8.7.1UNION 214

8.7.2EXCEPT 218

8.8小結 220

第9章多表查詢 221

9.1內連線 221

9.1.1用於內連線的兩個語法 221

9.1.2同等連線 223

9.1.3非同等

譯者序

這是一本關於SQL的全方位的參考書。換句話說,這本書沒有將目光局限在任何一個具體的資料庫管理系統上。本書試圖在最大限度上讓你理解什麼是標準的SQL以及標準的SQL在開發商們的不同實現上是如何貫徹的。本書的講解是以目前業界最重要也最流行的三個關係型資料庫管理系統(Oracle 9i,IBM DB2,Microsoft SQL Server 2000)為基礎的。 正如任何一本書都有其特定的讀者群一樣,這本書也不例外。從這本書的內容和敘述方式上看,本書是為那些希望全面了解SQL的能力,希望以某種方式將Oracle,IBM和Microsoft三家公司的資料庫產品貫通起來的讀者而寫的。本書的定位始終是一個“標準”,對所有三巨頭數..

前言

這本書是關於結構化查詢語言的。它以名稱SQL為人們所熟知,它是關係型資料庫的標準語言以及資料庫世界的國際通用語言。它已經存在了超過20年之久,而且沒有絲毫要衰退的跡象。這主要應歸功於大量的修訂:專利發明頻繁地被資料庫開發商們引入,這些專利或者被採納為標準,或者隨著資料庫界的發展被廢棄。最新的SQL標準在1999年被引入,儘管ANSI/ISO SQL標準的確存在,但這些標準中有許多只是在理論上維持著一致,在從一個實現到另一個實現間還有著很大的不同。因此,要想找到一本“囊括一切”的SQL書是非常困難的。一個作者可能偏愛某一特別的開發商,因此,一本相當不錯的Oracle或MS SQL Server書,但它..

文摘

第1章 SQL和關係資料庫管理系統

信息可能是現代社會中最有價值的商品。它可以以多種不同的形式呈現出來,例如會計賬目和薪金信息、有關客戶和訂購者的信息、科學和統計數據、圖形或多媒體。事實上,我們是完全被數據淹沒的,而且(至少我們願意這樣認為)這些數據不能夠丟失。現在,我們擁有的數據實在是太多了,無法把它們都保存到檔案櫃或硬紙箱中。對每一個企業而言,安全地存儲需要長期保存的海量數據,允許多用戶以不同的角度對海量數據進行有效的查詢,並在需要的時候能很方便地對數據進行更新,這些都是極為關鍵和重要的問題。這些工作需要交由現有的資料庫去處理,它能夠完成上述所有的任務以及其他更多的事情。簡單地說,資料庫就是一個有組織的信息集合(重點是“有組織的”)。

一個更明確的定義是資料庫管理系統(DBMS),它常被用做“資料庫”的同義詞。這個術語的含義更為寬泛,除了指存儲信息外,還包含了一些使用數據的方法和維護數據的工具。

注意:DBMS可以被定義為一個相關數據的集合及一套用於訪問、修改和維護數據的程式。有關DBMS的更多信息將在本章的後面介紹。

1.1 理想的資料庫特徵

關於資料庫是什麼和它應該做什麼,存在著許多不同的意見。但不管怎么說,所有現代資料庫都應該至少具有下列特徵。

相關詞條

相關搜尋

熱門詞條

聯絡我們