精通Oracle Database 12c SQL & PL/SQL編程(第3版)

內容簡介
學習通過撰寫SQL陳述句并構建PL/SQL程式來訪問Oracle資料庫,《精通OracleDatabase12cSQL&PL/SQL編程(第3版)》完全涵蓋了*新版本Oracle資料庫的功能和技術,指導讀者撰寫SQL陳述句以檢索和修改資料庫中的資訊、掌握SQL*Plus和SQLDeveloper、處理資料庫物件、撰寫PL/SQL程式、采用性能優化技術、結合XML以及其他技術,這本Oracle指南包含掌握SQL所需的全部知識,
精通Oracle Database 12c SQL & PL/SQL編程(第3版)目錄
著作權資訊
譯者序
前言
第1章 簡介
1.1 關系資料庫簡介
1.2 SQL簡介
1.3 使用SQL*Plus
1.4 使用SQL Developer
1.5 創建store模式
1.6 添加、修改和洗掉行
1.7 連接資料庫和斷開連接
1.8 退出SQL*Plus
1.9 Oracle PL/SQL簡介
1.10 小結
第2章 從資料庫表中檢索資訊
2.1 對單表執行SELECT陳述句
2.2 選擇一個表中的所有列
2.3 使用WHERE子句限定行
2.4 行識別符號
2.5 行號
2.6 執行算術運算
2.7 使用列別名
2.8 使用連接操作合并列的輸出結果
2.9 空值
2.10 禁止顯示重復行
2.11 比較值
2.12 使用SQL運算子
2.13 使用邏輯運算子
2.14 邏輯運算子的優先級
2.15 使用ORDER BY子句對行進行排序
2.16 執行使用兩個表的SELECT陳述句
2.17 使用表別名
2.18 笛卡爾積
2.19 執行使用多于兩個表的SELECT陳述句
2.20 連接條件和連接型別
2.21 使用SQL/92語法執行連接
2.22 小結
第3章 使用SQL*Plus
3.1 查看表的結構
3.2 編輯SQL陳述句
3.3 保存、檢索并運行檔案
3.4 格式化列
3.5 設定頁面大小
3.6 設定行大小
3.7 清除列的格式
3.8 使用變數
3.9 創建簡單報表
3.10 從SQL*Plus獲取幫助資訊
3.11 自動生成SQL陳述句
3.12 斷開資料庫連接并退出SQL*Plus
3.13 小結
第4章 使用簡單函式
4.1 使用單行函式
4.2 使用聚合函式
4.3 對行進行分組
4.4 小結
第5章 日期和時間的存盤與處理
5.1 幾個簡單的存盤和檢索日期的例子
5.2 使用TO_CHAR()和TO_DATE()轉換時間值
5.3 設定默認的日期格式
5.4 Oracle對兩位年份的處理
5.5 使用時間值函式
5.6 使用時區
5.7 使用時間戳
5.8 使用時間間隔
5.9 小結
第6章 子查詢
6.1 子查詢的型別
6.2 撰寫單行子查詢
6.3 撰寫多行子查詢
6.4 撰寫多列子查詢
6.5 撰寫關聯子查詢
6.6 撰寫嵌套子查詢
6.7 撰寫包含子查詢的UPDATE和DELETE陳述句
6.8 使用子查詢因子化
6.9 小結
第7章 高級查詢
7.1 使用集合運算子
7.2 使用TRANSLATE()函式
7.3 使用DECODE()函式
7.4 使用CASE運算式
7.5 層次化查詢
7.6 使用ROLLUP和CUBE子句
第8章 分析資料
8.1 使用分析函式
8.2 使用MODEL子句
8.3 使用PIVOT和UNPIVOT子句
8.4 執行Top-N查詢
8.5 在資料中發現模式
8.6 小結
第9章 修改表的內容
9.1 使用INSERT陳述句添加行
9.2 使用UPDATE陳述句修改行
9.3 使用RETURNING子句回傳聚合函式的計算結果
9.4 使用DELETE陳述句洗掉行
9.5 資料庫的完整性
9.6 使用默認值
9.7 使用MERGE合并行
9.8 資料庫事務
9.9 查詢閃回
9.10 小結
第10章 用戶、特權和角色
資料庫存盤簡介
10.1 用戶
10.2 系統特權
10.3 物件特權
10.4 角色
10.5 審計
10.6 小結
第11章 創建表、序列、索引和視圖
11.1 表
11.2 序列
11.3 索引
11.4 視圖
11.5 閃回資料歸檔
11.6 小結
第12章 PL/SQL編程簡介
12.1 塊結構
12.2 變數和型別
12.3 條件邏輯
12.4 回圈
12.5 游標
12.6 例外
12.7 程序
12.8 函式
12.9 包
12.10 觸發器
12.11 其他PL/SQL特性
12.12 小結
第13章 資料庫物件
13.1 物件簡介
運行腳本以創建物件模式
13.2 創建物件型別
13.3 使用DESCRIBE獲取有關物件型別的資訊
13.4 在資料庫表中使用物件型別
13.5 在PL/SQL中使用物件
13.6 型別繼承
13.7 用子型別物件代替超型別物件
13.8 其他有用的物件函式
13.9 NOT INSTANTIABLE物件型別
13.10 用戶自定義的建構式
13.11 多載方法
13.12 通用呼叫
13.13 小結
第14章 集合
14.1 集合簡介
運行腳本以創建集合模式
14.2 創建集合型別
14.3 使用集合型別定義表列
14.4 獲取集合資訊
14.5 填充集合元素
14.6 檢索集合元素
14.7 使用TABLE()函式將集合視為一系列行
14.8 更改集合元素
14.9 使用映射方法比較嵌套表的內容
14.10 使用CAST()函式將集合從一種型別轉換為另一種型別
14.11 在PL/SQL中使用集合
14.12 創建和使用多級集合
14.13 Oracle Database 10g對集合的增強
14.14 小結
第15章 大物件
15.1 大物件(LOB)簡介
15.2 示例檔案
15.3 理解大物件型別
15.4 創建包含大物件的表
15.5 在SQL中使用大物件
15.6 在PL/SQL中使用大物件
15.7 LONG和LONG RAW型別
15.8 Oracle Database 10g對大物件的增強
15.9 Oracle Database 11g對大物件的增強
15.10 Oracle Database 12c對大物件的增強
15.11 小結
第16章 SQL優化
16.1 SQL優化簡介
16.2 使用WHERE子句過濾行
16.3 使用表連接而不是多個查詢
16.4 執行連接時使用完全限定的列參考
16.5 使用CASE運算式而不是多個查詢
16.6 添加表索引
16.7 使用WHERE而不是HAVING
16.8 使用UNION ALL而不是UNION
16.9 使用EXISTS而不是IN
16.10 使用EXISTS而不是DISTINCT
16.11 使用GROUPING SETS而不是CUBE
16.12 使用系結變數
16.13 比較執行查詢的成本
16.14 為優化器傳遞提示
16.15 其他優化工具
16.16 小結
第17章 XML和Oracle資料庫
17.1 XML簡介
17.2 從關系資料生成XML
17.3 將XML保存到資料庫中
17.4 小結
附錄 Oracle資料型別
前言
現在的資料庫管理系統使用一種標準語言——結構化查詢語言(StructuredQueryLanguage,SQL)訪問,此外,SQL還可以對資料庫中的資訊進行檢索、添加、更新和洗掉,本書將介紹如何真正掌握SQL,同時還會給出許多實用的例子,讀者可以通過網路獲得本書中用到的所有腳本和程式(詳細資訊參看后文“本書源代碼下載”部分),
通過本書讀者可以:
掌握標準的SQL,以及Oracle公司為了使用Oracle資料庫的特性而開發的一些擴展,
理解PL/SQL,它允許用戶撰寫包含SQL陳述句的程式,
使用SQL*Plus執行SQL陳述句、腳本和報表;SQL*Plus是一個用于與資料庫進行互動的工具,
對資料庫執行查詢、插入、更新和洗掉操作,
創建資料庫表、序列、索引、視圖和用戶,
執行包含多條SQL陳述句的事務,
定義資料庫物件型別,以及創建物件表來處理高級資料,
使用大物件來處理包含影像、音樂和電影的多媒體檔案,
使用分析函式執行復雜計算,
實作高性能的優化技術,使SQL陳述句可以快速執行,
探討Oracle資料庫的XML功能,
使用*新的OracleDatabase12cSQL功能,
本書共包含17章和一個附錄,
第1章簡介
本章將介紹有關關系資料庫和SQL的知識,然后給出幾個簡單查詢,并使用SQL*Plus和SQLDeveloper執行這些查詢,*后簡要介紹PL/SQL,
第2章從資料庫表中檢索資訊
本章將展示如何使用SELECT陳述句從一個或多個資料庫表中檢索資訊,如何使用算術運算式執行計算,如何使用WHERE子句對行進行過濾,以及如何對從表中檢索出的行排序,
第3章使用SQL*Plus
本章將介紹使用SQL*Plus來查看表的結構,編輯SQL陳述句,保存并運行腳本,設定列的輸出格式,定義并使用變數,以及創建報表,
第4章使用簡單函式
本章將介紹有關Oracle資料庫中內置函式的知識,函式可以接受輸入引數,并回傳輸出引數1,使用函式可以實作很多功能,例如計算一組數字的平均值和平方根,
第5章日期和時間的存盤與處理
本章將介紹Oracle資料庫如何處理與存盤日期和時間(二者合稱時間值),本章還將介紹如何使用時間戳來存盤特定的日期和時間,如何使用時間間隔來存盤一定長度的時間段,
第6章子查詢
本章將介紹如何在外部的SQL陳述句中放置SELECT陳述句,內部的SELECT陳述句被稱為子查詢,本章還將介紹子查詢的各種型別,以及如何使用子查詢從簡單部件構建復雜陳述句,
第7章高級查詢
本章將介紹如何執行包含高級運算子和函式的查詢,例如,集合運算子可以合并由多個查詢回傳的行,TRANSLATE()函式可以將一個字串中的字符轉換為另一個字串中的字符,DECODE()函式可以在一組值中搜索某個特定的值,CASE運算式可以執行if-then-else邏輯,ROLLUP和CUBE子句可以回傳包含小計的行,OracleDatabase12c中新增加了CROSSAPPLY和OUTERAPPLY來合并兩條SELECT陳述句回傳的行,還增加了LATERAL以回傳資料的行內視圖,
第8章分析資料
本章將介紹有關分析函式的知識,分析函式可以用來執行復雜計算,例如查找每月銷量*高的產品型別、業績*佳的銷售員等,本章還將介紹如何對層次化組織的資料進行查詢,并將探討如何使用MODEL子句執行行間計算,*后,我們會講解PIVOT和UNPIVOT子句,使用它們可以了解大量資料的整體趨勢,OracleDatabase12c中新增加了MATCH_RECOGNIZE子句來查找資料中的模式,還增加了FETCHFIRST子句來執行top-N查詢,
第9章修改表的內容
本章將介紹如何使用INSERT、UPDATE和DELETE陳述句添加、修改和洗掉行,如何使用COMMIT陳述句使事務的處理結果永久生效,或者使用ROLLBACK陳述句完全取消事務執行的操作,本章還將介紹Oracle資料庫如何同時處理多個事務,
第10章用戶、特權和角色
本章將介紹有關資料庫用戶的知識以及如何使用特權和角色來控制用戶可以在資料庫中執行的特定任務,
第11章創建表、序列、索引和視圖
本章將介紹有關表、序列和索引的知識,序列會生成一系列數字,而索引就如同書籍的索引,可以幫助讀者快速訪問表中的行,本章還將介紹有關視圖的知識,視圖是對一個或多個表預定義的查詢,視圖可以對用戶屏蔽復雜性,并通過只允許視圖訪問表中有限的資料集,從另一層面上實作安全特性,本章還將討論閃回資料歸檔,這會將對表所做的改變存盤一段時間,OracleDatabase12c中新增加了在表中定義可見列和不可見列的能力,
第12章PL/SQL編程簡介
本章將介紹有關PL/SQL的知識,PL/SQL構建在SQL基礎之上,使用PL/SQL可以在資料庫中撰寫包含SQL陳述句的存盤程式,PL/SQL包含標準的編程結構,
第13章資料庫物件
本章將介紹如何創建資料庫物件型別,資料庫物件型別可以包括屬性和方法;還將介紹如何使用物件型別來定義列物件和物件表,以及如何使用SQL和PL/SQL來操縱物件,
第14章集合
本章將介紹如何創建集合型別,集合可以包含多個元素;還將介紹如何使用集合型別來定義表中的列,以及如何使用SQL和PL/SQL來操縱集合,
第15章大物件
本章將介紹有關大物件的知識,大物件可以用來存盤多達128TB的字符和二進制資料(也可以是指向外部檔案的指標);此外,還將介紹有關較舊的LONG型別的知識,為了保持向后兼容性,在OracleDatabase12c中依然支持LONG型別,
第16章SQL優化
本章將介紹SQL優化的一些技巧,這些技巧可以用來縮短查詢執行的時間;本章還將介紹有關Oracle優化器的知識,以及如何向優化器傳遞一些提示,此外還介紹了如何使用高級調優工具,
第17章XML和Oracle資料庫
可擴展標記語言(XML)是一種通用標記語言,可用來在Internet上共享結構化資料,并可用來編碼資料和其他檔案,本章將介紹如何從關系資料生成XML,以及如何將XML保存到資料庫中,
附錄Oracle資料型別
本附錄列出了OracleSQL和PL/SQL中可以使用的資料型別,
本書讀者物件
本書適用于以下讀者:
需要撰寫SQL和PL/SQL的開發人員
需要深入了解SQL的資料庫管理員
需要撰寫SQL查詢來從自己公司的資料庫中獲得資訊的業務用戶
需要簡單了解SQL和PL/SQL的技術主管和技術顧問
讀者閱讀本書,不需要預先了解Oracle資料庫、SQL或PL/SQL的知識;本書為讀者提供了成為這方面專家所需的全部知識,

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/4099.html
標籤:Oracle
