出版時(shí)間:2005-5 出版社:清華大學(xué) 作者:普里斯 頁(yè)數(shù):475
Tag標(biāo)簽:無(wú)
內(nèi)容概要
本書全面深入地論述了如何使用結(jié)構(gòu)化查詢語(yǔ)言(SQL)語(yǔ)句來(lái)訪問(wèn)Oracle數(shù)據(jù)庫(kù),以及使用PL/SQL(Procedural Language/SQL)來(lái)編寫包含SQL語(yǔ)句的程序。本書由Oracle前產(chǎn)品經(jīng)理Jason Price親筆撰寫,基于新推出的SQL 2003規(guī)范]]],詳細(xì)介紹了Oracle Database 10g的新特性和功能。全書內(nèi)容系統(tǒng)、權(quán)威,能幫助讀者快速掌握SQL的核心知識(shí)。
作者簡(jiǎn)介
Jason Price 職業(yè)咨詢專家,Oracle公司前產(chǎn)品經(jīng)理,對(duì)Oracle的眾多產(chǎn)品都做出了卓越的貢獻(xiàn)。Jason是一位經(jīng)Oracle認(rèn)證的數(shù)據(jù)庫(kù)管理員和應(yīng)用程序開發(fā)員,在軟件產(chǎn)業(yè)具有10余年的從業(yè)經(jīng)驗(yàn),并親筆撰寫了多本關(guān)于Oracle、Jave和Net的優(yōu)秀圖書。
書籍目錄
第1章 簡(jiǎn)介 1.1 關(guān)系數(shù)據(jù)庫(kù)簡(jiǎn)介 1.2 結(jié)構(gòu)化查詢語(yǔ)言(SQL)簡(jiǎn)介 1.3 使用SQL*Plus 1.3.1 啟動(dòng)Windows版本的SQL*Plus 1.3.2 啟動(dòng)命令行版本的SQL*Plus 1.4 使用SQL*Plus執(zhí)行SELECT語(yǔ)句 1.5 SQL*Plus Worksheet 1.6 創(chuàng)建store模式 1.6.1 運(yùn)行SQL*Plus腳本創(chuàng)建store模式 1.6.2 用來(lái)創(chuàng)建store模式的DDL語(yǔ)句 1.7 添加、修改、刪除行 1.7.1 向表中添加行 1.7.2 修改表中的現(xiàn)有行 1.7.3 從表中刪除行 1.8 Oracle 10g的新數(shù)據(jù)類型BINARY_FLOAT和 BINARY_ DOUBLE 1.8.1 BINARY_FLOAT和BINARY_DOUBLE的優(yōu)點(diǎn) 1.8.2 在表中使用BINARY_FLOAT和BINARY_DOUBLE 1.8.3 特殊值 1.9 退出SQL*Plus 1.10 Oracle PL/SQL簡(jiǎn)介 1.11 小結(jié)第2章 從數(shù)據(jù)庫(kù)表中檢索信息 2.1 對(duì)單表執(zhí)行SELECT語(yǔ)句 2.2 選擇一個(gè)表中的所有列 2.3 理解行標(biāo)識(shí)符 2.4 執(zhí)行算術(shù)運(yùn)算 2.4.1 日期運(yùn)算 2.4.2 列運(yùn)算 2.5 使用列別名 2.6 使用串連操作合并列的輸出結(jié)果 2.7 理解空值 2.8 禁止顯式重復(fù)行 2.9 使用WHERE子句過(guò)濾行 2.9.1 使用比較操作符 2.9.2 使用SQL操作符 2.9.3 使用邏輯操作符 2.9.4 理解操作符的優(yōu)先級(jí) 2.10 使用ORDER BY子句對(duì)行進(jìn)行排序 2.11 執(zhí)行使用兩個(gè)表的SELECT語(yǔ)句 2.12 使用表別名 2.13 笛卡爾積 2.14 執(zhí)行使用多于兩個(gè)表的SELECT語(yǔ)句 2.15 理解連接條件和連接類型 2.15.1 理解不等連接 2.15.2 理解外連接 2.15.3 理解自連接 2.16 使用SQL/92語(yǔ)法執(zhí)行連接 2.16.1 使用SQL/92標(biāo)準(zhǔn)語(yǔ)法執(zhí)行兩個(gè)表的內(nèi)連接 2.16.2 使用USING關(guān)鍵字簡(jiǎn)化連接 2.16.3 使用SQL/92執(zhí)行多于兩個(gè)以上表的內(nèi)連接 2.16.4 使用SQL/92執(zhí)行多列的內(nèi)連接 2.16.5 使用SQL/92執(zhí)行外連接 2.16.6 使用SQL/92執(zhí)行自連接 2.16.7 使用SQL/92執(zhí)行交叉連接 2.17 小結(jié) 第3章 使用簡(jiǎn)單函數(shù) 3.1 使用單行函數(shù) 3.1.1 字符函數(shù) 3.1.2 數(shù)字函數(shù) 3.1.3 轉(zhuǎn)換函數(shù) 3.1.4 正則表達(dá)式函數(shù) 3.2 使用聚合函數(shù) 3.2.1 AVG()函數(shù) 3.2.2 COUNT()函數(shù) 3.2.3 MAX()和MIN()函數(shù) 3.2.4 STDDEV()函數(shù) 3.2.5 SUM()函數(shù) 3.2.6 VARIANCE()函數(shù) 3.3 對(duì)行進(jìn)行分組 3.3.1 使用GROUP BY子句對(duì)行進(jìn)行分組 3.3.2 調(diào)用聚合函數(shù)的錯(cuò)誤用法 3.3.3 使用HAVING子句過(guò)濾行分組 3.3.4 組合使用WHERE和GROUP BY子句 3.3.5 組合使用WHERE、GROUP BY和HAVING子句 3.4 小結(jié) 第4章 日期和時(shí)間的存儲(chǔ)與處理 4.1 幾個(gè)簡(jiǎn)單的存儲(chǔ)和檢索日期的例子 4.2 使用TO_CHAR()和TO_DATE()轉(zhuǎn)換時(shí)間值 4.2.1 使用TO_CHAR()將時(shí)間值轉(zhuǎn)換為字符串 4.2.2 使用TO_DATE()將字符串轉(zhuǎn)換為時(shí)間值 4.3 設(shè)置默認(rèn)的日期格式 4.4 Oracle對(duì)2位年份的處理 4.4.1 使用YY格式 4.4.2 使用RR格式 4.5 使用時(shí)間值函數(shù) 4.5.1 ADD_MONTHS()函數(shù) 4.5.2 LAST_DAY()函數(shù) 4.5.3 MONTHS_BETWEEN() 4.5.4 NEXT_DAY()函數(shù) 4.5.5 ROUND()函數(shù) 4.5.6 SYSDATE()函數(shù) 4.5.7 TRUNC()函數(shù) 4.6 理解時(shí)區(qū) 4.6.1 與時(shí)區(qū)有關(guān)的函數(shù) 4.6.2 數(shù)據(jù)庫(kù)時(shí)區(qū)和會(huì)話時(shí)區(qū) 4.6.3 獲取時(shí)區(qū)的時(shí)差 4.6.4 獲取時(shí)區(qū)名 4.6.5 將時(shí)間值從一個(gè)時(shí)區(qū)轉(zhuǎn)換為另一個(gè)時(shí)區(qū) 4.7 使用時(shí)間戳 4.7.1 使用TIMESTAMP類型 4.7.2 與時(shí)間戳有關(guān)的函數(shù) 4.8 使用時(shí)間間隔 4.8.1 使用INTERVAL YEAR TO MONTH類型 4.8.2 使用INTERVAL DAY TO SECOND類型 4.8.3 與時(shí)間間隔有關(guān)的函數(shù) 4.9 小結(jié) 第5章 使用SQL*Plus 5.1 查看表結(jié)構(gòu) 5.2 編輯SQL語(yǔ)句 5.3 保存、檢索并運(yùn)行文件 5.4 格式化列 5.5 設(shè)置頁(yè)面大小 5.6 設(shè)置行大小 5.7 清除列格式 5.8 使用變量 5.8.1 臨時(shí)變量 5.8.2 已定義變量 5.9 創(chuàng)建簡(jiǎn)單報(bào)表 5.9.1 在腳本中使用臨時(shí)變量 5.9.2 在腳本中使用已定義變量 5.9.3 向腳本中的變量傳遞值 5.9.4 添加頁(yè)眉和頁(yè)腳 5.9.5 計(jì)算小計(jì) 5.10 自動(dòng)生成SQL語(yǔ)句 5.11 小結(jié) 第6章 子查詢 6.1 子查詢的類型 6.2 編寫單行子查詢 6.2.1 在WHERE子句中使用子查詢 6.2.2 在HAVING子句中使用子查詢 6.2.3 在FROM子句中使用子查詢(內(nèi)聯(lián)視圖) 6.2.4 可能碰到的兩個(gè)錯(cuò)誤 6.3 編寫多行子查詢 6.3.1 在多行子查詢中使用IN操作符 6.3.2 在多行子查詢中使用ANY操作符 6.3.3 在多行子查詢中使用ALL操作符 6.4 編寫多列子查詢 6.5 編寫關(guān)聯(lián)子查詢 6.5.1 關(guān)聯(lián)子查詢的例子 6.5.2 在關(guān)聯(lián)子查詢中使用EXISTS和NOT EXISTS 6.6 編寫嵌套子查詢 6.7 編寫包含子查詢的UPDATE和DELETE語(yǔ)句 6.7.1 編寫包含子查詢的UPDATE語(yǔ)句 6.7.2 編寫包含子查詢的DELETE語(yǔ)句 6.8 小結(jié) 第7章 高級(jí)查詢 7.1 使用集合操作符 7.1.1 示例表 7.1.2 使用UNION ALL操作符 7.1.3 使用UNION操作符 7.1.4 使用INTERSECT操作符 7.1.5 使用MINUS操作符 7.1.6 組合使用集合操作符 7.2 使用TRANSLATE()函數(shù) 7.3 使用DECODE()函數(shù) 7.4 使用CASE表達(dá)式 7.4.1 使用簡(jiǎn)單CASE表達(dá)式 7.4.2 使用搜索CASE表達(dá)式 7.5 層次化查詢 7.5.1 示例數(shù)據(jù) 7.5.2 使用CONNECT BY和START WITH子句 7.5.3 使用偽列LEVEL 7.5.4 格式化層次化查詢的結(jié)果 7.5.5 從非根節(jié)點(diǎn)開始遍歷 7.5.6 在START WITH子句中使用子查詢 7.5.7 從下向上遍歷樹 7.5.8 從層次查詢中刪除節(jié)點(diǎn)和分支 7.5.9 在層次化查詢中加入其他條件 7.6 使用擴(kuò)展的GROUP BY子句 7.7 使用ROLLUP子句 7.7.1 使用CUBE子句 7.7.2 使用GROUPING()函數(shù) 7.7.3 使用GROUPING SETS子句 7.7.4 使用GROUPING_ID()函數(shù) 7.7.5 在GROUP BY子句中多次使用一個(gè)列 7.7.6 使用GROUP_ID()函數(shù) 7.8 使用分析函數(shù) 7.8.1 示例表 7.8.2 使用評(píng)級(jí)函數(shù) 7.8.3 使用反百分點(diǎn)函數(shù) 7.8.4 使用窗口函數(shù) 7.8.5 使用報(bào)表函數(shù) 7.8.6 使用LAG()和LEAD()函數(shù) 7.8.7 使用FIRST和LAST函數(shù) 7.8.8 使用線性回歸函數(shù) 7.8.9 使用假想評(píng)級(jí)與分布函數(shù) 7.9 使用MODEL子句 7.9.1 示例MODEL子句 7.9.2 用位置標(biāo)記和符號(hào)標(biāo)記訪問(wèn)數(shù)據(jù)單元 7.9.3 用BETWEEN和AND返回特定范圍內(nèi)的數(shù)據(jù)單元 7.9.4 用ANY和IS ANY訪問(wèn)所有的數(shù)據(jù)單元 7.9.5 用CURRENTV()獲取某個(gè)維度的當(dāng)前值 7.9.6 用FOR循環(huán)訪問(wèn)數(shù)據(jù)單元 7.9.7 處理空值和缺失值 7.9.8 更新已有的單元 7.10 小結(jié) 第8章 修改表的內(nèi)容 8.1 使用INSERT語(yǔ)句添加行 8.1.1 忽略列的列表 8.1.2 為列指定空值 8.1.3 在列值中使用單引號(hào)和雙引號(hào) 8.1.4 從一個(gè)表向另外一個(gè)表復(fù)制行 8.2 使用UPDATE語(yǔ)句修改行 8.3 使用DELETE語(yǔ)句刪除行 8.4 數(shù)據(jù)庫(kù)的完整性 8.4.1 主鍵約束 8.4.2 外鍵約束 8.5 使用默認(rèn)值 8.6 使用MERGE合并行 8.7 數(shù)據(jù)庫(kù)事務(wù) 8.7.1 事務(wù)的提交和回滾 8.7.2 事務(wù)的開始與結(jié)束 8.7.3 保存點(diǎn) 8.7.4 事務(wù)的ACID特性 8.7.5 并發(fā)事務(wù) 8.7.6 事務(wù)鎖 8.7.7 事務(wù)隔離級(jí)別 8.7.8 SERIALIZABLE事務(wù)隔離性級(jí)別的一個(gè)例子 8.8 查詢閃回 8.8.1 使用閃回的授權(quán) 8.8.2 時(shí)間查詢閃回 8.8.3 系統(tǒng)變更號(hào)查詢閃回 8.9 小結(jié) 第9章 數(shù)據(jù)庫(kù)安全性 9.1 用戶 9.1.1 創(chuàng)建用戶 9.1.2 修改用戶密碼 9.1.3 刪除用戶 9.2 系統(tǒng)特權(quán) 9.2.1 向用戶授予系統(tǒng)特權(quán) 9.2.2 檢查授予用戶的系統(tǒng)特權(quán) 9.2.3 使用系統(tǒng)特權(quán) 9.2.4 撤銷用戶的系統(tǒng)特權(quán) 9.3 對(duì)象特權(quán) 9.3.1 向用戶授予對(duì)象特權(quán) 9.3.2 檢查已授予的對(duì)象特權(quán) 9.3.3 檢查已接受的對(duì)象特權(quán) 9.3.4 使用對(duì)象特權(quán) 9.3.5 同名對(duì)象 9.3.6 公共同名對(duì)象 9.3.7 撤銷用戶的對(duì)象特權(quán) 9.4 角色 9.4.1 創(chuàng)建角色 9.4.2 為角色授權(quán) 9.4.3 將角色授予用戶 9.4.4 檢查授予用戶的角色 9.4.5 檢查授予角色的系統(tǒng)特權(quán) 9.4.6 檢查授予角色的對(duì)象特權(quán) 9.4.7 使用授予角色的特權(quán) 9.4.8 默認(rèn)角色 9.4.9 撤銷角色 9.4.10 從角色中撤銷特權(quán) 9.4.11 刪除角色 9.5 小結(jié) 第10章 創(chuàng)建表、序列、索引和視圖 10.1 表 10.1.1 創(chuàng)建表 10.1.2 獲得有關(guān)表的信息 10.1.3 獲得表中列的信息 10.1.4 修改表 10.1.5 重命名表 10.1.6 向表添加注釋 10.1.7 截?cái)啾? 10.1.8 刪除表 10.2 序列 10.2.1 創(chuàng)建序列 10.2.2 獲取有關(guān)序列的信息 10.2.3 使用序列 10.2.4 使用序列填充主鍵 10.2.5 修改序列 10.2.6 刪除序列 10.3 索引 10.3.1 創(chuàng)建索引 10.3.2 創(chuàng)建基于函數(shù)的索引 10.3.3 獲取有關(guān)索引的信息 10.3.4 獲取列索引的信息 10.3.5 修改索引 10.3.6 刪除索引 10.4 視圖 10.4.1 創(chuàng)建并使用視圖 10.4.2 修改視圖 10.4.3 刪除視圖 10.5 小結(jié) 第11章 PL/SQL編程簡(jiǎn)介 11.1 塊結(jié)構(gòu) 11.2 變量和類型 11.3 條件邏輯 11.4 循環(huán) 11.4.1 簡(jiǎn)單循環(huán) 11.4.2 WHILE循環(huán) 11.4.3 FOR循環(huán) 11.5 游標(biāo) 11.5.1 步驟1:聲明用于保存列值的變量 11.5.2 步驟2:聲明游標(biāo) 11.5.3 步驟3:打開游標(biāo) 11.5.4 步驟4:從游標(biāo)中取得記錄 11.5.5 步驟5:關(guān)閉游標(biāo) 11.5.6 完整的實(shí)例:product_cursor.sql 11.5.7 游標(biāo)與FOR循環(huán) 11.6 異常 11.6.1 ZERO_DIVIDE異常 11.6.2 DUP_VAL_ON_INDEX異常 11.6.3 INVALID_NUMBER異常 11.6.4 OTHERS異常 11.7 過(guò)程 11.7.1 創(chuàng)建過(guò)程 11.7.2 調(diào)用過(guò)程 11.7.3 獲取有關(guān)過(guò)程的信息 11.7.4 刪除過(guò)程 11.7.5 查看過(guò)程中的錯(cuò)誤 11.8 函數(shù) 11.8.1 創(chuàng)建函數(shù) 11.8.2 調(diào)用函數(shù) 11.8.3 獲取有關(guān)函數(shù)的信息 11.8.4 刪除函數(shù) 11.9 包 11.9.1 創(chuàng)建包規(guī)范 11.9.2 創(chuàng)建包體 11.9.3 調(diào)用包中的函數(shù)和過(guò)程 11.9.4 獲取有關(guān)包中函數(shù)和過(guò)程的信息 11.9.5 刪除包 11.10 觸發(fā)器 11.10.1 觸發(fā)器運(yùn)行的時(shí)機(jī) 11.10.2 設(shè)置示例觸發(fā)器 11.10.3 創(chuàng)建觸發(fā)器 11.10.4 激活觸發(fā)器 11.10.5 獲取有關(guān)觸發(fā)器的信息 11.10.6 禁用和啟用觸發(fā)器 11.10.7 刪除觸發(fā)器 11.11 小結(jié) 第12章 數(shù)據(jù)庫(kù)對(duì)象 12.1 對(duì)象簡(jiǎn)介 12.2 創(chuàng)建對(duì)象類型 12.3 使用DESCRIBE獲取有關(guān)對(duì)象類型的信息 12.4 用對(duì)象類型定義列對(duì)象和對(duì)象表 12.5 對(duì)products表執(zhí)行DML操作 12.5.1 將記錄插入到products表中 12.5.2 從products表中查詢記錄 12.5.3 修改products表中的記錄 12.5.4 從products表中刪除記錄 12.6 對(duì)object_products表執(zhí)行DML 12.6.1 向object_products表中插入記錄 12.6.2 從object_products表中選擇記錄 12.6.3 更新object_products表中的記錄 12.6.4 從object_products表中刪除記錄 12.7 對(duì)object_customers表執(zhí)行DML 12.7.1 向object_customers表中插入記錄 12.7.2 從object_customers表中查詢記錄 12.8 對(duì)purchases表執(zhí)行DML 12.8.1 向purchases表中插入記錄 12.8.2 從purchases表中選擇記錄 12.8.3 更新purchases表中的記錄 12.9 在PL/SQL中使用對(duì)象 12.10 類型繼承 12.11 NOT INSTANTIABLE對(duì)象類型 12.12 用戶自定義的構(gòu)造函數(shù) 12.13 小結(jié) 第13章 集合 13.1 集合簡(jiǎn)介 13.2 變長(zhǎng)數(shù)組 13.2.1 創(chuàng)建變長(zhǎng)數(shù)組類型 13.2.2 使用變長(zhǎng)數(shù)組類型定義表列 13.2.3 獲得變長(zhǎng)數(shù)組信息 13.2.4 填充變長(zhǎng)數(shù)組元素 13.2.5 查找變長(zhǎng)數(shù)組元素 13.2.6 更改變長(zhǎng)數(shù)組元素 13.3 嵌套表 13.3.1 創(chuàng)建嵌套表類型 13.3.2 使用嵌套表類型定義表列 13.3.3 獲得嵌套表信息 13.3.4 填充嵌套表元素 13.3.5 查找嵌套表元素 13.3.6 更改嵌套表元素 13.4 多級(jí)集合類型 13.5 在PL/SQL中使用集合 13.5.1 操作變長(zhǎng)數(shù)組 13.5.2 操作嵌套表 13.5.3 集合方法 13.6 Oracle 10g對(duì)集合的改進(jìn) 13.6.1 關(guān)聯(lián)數(shù)組 13.6.2 更改元素類型的大小或精度 13.6.3 增加變長(zhǎng)數(shù)組的元素?cái)?shù)目 13.6.4 在臨時(shí)表中使用變長(zhǎng)數(shù)組 13.6.5 為嵌套表的存儲(chǔ)表使用不同的表空間 13.6.6 對(duì)嵌套表的ANSI支持 13.7 小結(jié) 第14章 大對(duì)象 14.1 大對(duì)象(LOB)簡(jiǎn)介 14.2 示例文件 14.3 理解大對(duì)象類型 14.4 創(chuàng)建包含大對(duì)象的表 14.5 在SQL中使用大對(duì)象 14.5.1 使用CLOB和BLOB 14.5.2 使用BFILE 14.6 在PL/SQL中使用大對(duì)象 14.6.1 READ() 14.6.2 WRITE() 14.6.3 APPEND() 14.6.4 CLOSE() 14.6.5 COMPARE() 14.6.6 COPY() 14.6.7 CREATETEMPORARY() 14.6.8 ERASE() 14.6.9 FILECLOSE() 14.6.10 FILECLOSEALL() 14.6.11 FILEEXISTS() 14.6.12 FILEGETNAME() 14.6.13 FILEISOPEN() 14.6.14 FILEOPEN() 14.6.15 FREETEMPORARY() 14.6.16 GETCHUNKSIZE() 14.6.17 GET_STORAGE_LIMIT() 14.6.18 GETLENGTH() 14.6.19 INSTR() 14.6.20 ISOPEN() 14.6.21 ISTEMPORARY() 14.6.22 LOADFROMFILE() 14.6.23 LOADBLOBFROMFILE() 14.6.24 LOADCLOBFROMFILE() 14.6.25 OPEN() 14.6.26 SUBSTR() 14.6.27 TRIM() 14.6.28 WRITEAPPEND() 14.7 理解LONG和LONG RAW類型 14.7.1 示例表 14.7.2 使用LONG和LONG RAW列 14.8 Oracle10g對(duì)大對(duì)象的增強(qiáng) 14.8.1 CLOB和NCLOB對(duì)象之間的隱式轉(zhuǎn)換 14.8.2 在觸發(fā)器中使用LOB時(shí):new屬性的用法 14.9 小結(jié) 第15章 使用Java運(yùn)行SQL 15.1 準(zhǔn)備工作 15.2 配置計(jì)算機(jī) 15.2.1 設(shè)置ORACLE_HOME環(huán)境變量 15.2.2 設(shè)置JAVA_HOME環(huán)境變量 15.2.3 設(shè)置PATH環(huán)境變量 15.2.4 設(shè)置CLASSPATH環(huán)境變量 15.2.5 設(shè)置LD_LIBRARAY_PATH環(huán)境變量 15.3 Oracle JDBC驅(qū)動(dòng)程序 15.3.1 Thin驅(qū)動(dòng)程序 15.3.2 OCI驅(qū)動(dòng)器 15.3.3 服務(wù)器端內(nèi)部驅(qū)動(dòng)器 15.3.4 服務(wù)器端Thin驅(qū)動(dòng)器 15.4 導(dǎo)入JDBC包 15.5 注冊(cè)O(shè)racle JDBC驅(qū)動(dòng)程序 15.6 打開數(shù)據(jù)庫(kù)連接 15.6.1 使用DriverManager類的getConnection()方法連接數(shù)據(jù)庫(kù) 15.6.2 使用Oracle數(shù)據(jù)源連接數(shù)據(jù)庫(kù) 15.7 創(chuàng)建JDBC Statement對(duì)象 15.8 從數(shù)據(jù)庫(kù)檢索列 15.8.1 步驟1:創(chuàng)建和填充ResultSet對(duì)象 15.8.2 步驟2:從ResultSet對(duì)象中讀取列值 15.8.3 步驟3:關(guān)閉ResultSet對(duì)象 15.9 向數(shù)據(jù)庫(kù)添加行 15.10 更改數(shù)據(jù)庫(kù)的行 15.11 刪除數(shù)據(jù)庫(kù)的行 15.12 處理數(shù)字 15.13 處理數(shù)據(jù)庫(kù)Null值 15.14 控制數(shù)據(jù)庫(kù)事務(wù) 15.15 執(zhí)行DDL語(yǔ)句 15.16 處理異?!?5.17 關(guān)閉JDBC對(duì)象 15.18 示例程序:BasicExample1.java 15.18.1 編譯BasicExample1 15.18.2 運(yùn)行BasicExample1 15.19 預(yù)備SQL語(yǔ)句 15.20 Oracle JDBC擴(kuò)展 15.20.1 oracle.sql包 15.20.2 oracle.jdbc包 15.20.3 示例程序:BasicExample3.java 15.21 小結(jié) 第16章 SQL優(yōu)化 16.1 SQL優(yōu)化簡(jiǎn)介 16.2 使用WHERE子句過(guò)濾行 16.3 使用表連接而不是多個(gè)查詢 16.4 執(zhí)行連接時(shí)使用完全限定的列引用 16.5 使用CASE表達(dá)式而不是多個(gè)查詢 16.6 添加表索引 16.7 使用WHERE而不是HAVING 16.8 使用UNION ALL而不是UNION 16.9 使用EXISTS而不是IN 16.10 使用EXISTS而不是DISTINCT 16.11 使用綁定變量 16.11.1 不相同的SQL語(yǔ)句 16.11.2 使用綁定變量定義相同SQL語(yǔ)句 16.11.3 列出和輸出綁定變量 16.11.4 使用綁定變量存儲(chǔ)PL/SQL函數(shù)的返回值 16.11.5 使用綁定變量存儲(chǔ)REFCURSOR的行 16.12 比較執(zhí)行查詢的成本 16.12.1 檢查執(zhí)行計(jì)劃 16.12.2 比較執(zhí)行計(jì)劃 16.13 為優(yōu)化器傳遞提示 16.14 其他優(yōu)化工具 16.14.1 Statspack包 16.14.2 Oracle Enterprise Manager Diagnostics Pack 16.14.3 自動(dòng)數(shù)據(jù)庫(kù)診斷監(jiān)控 16.15 小結(jié) 附錄A Oracle數(shù)據(jù)類型 A.1 Oracle SQL類型 A.2 Oracle PL/SQL類型
媒體關(guān)注與評(píng)論
書評(píng)本書主要內(nèi)容: 對(duì)數(shù)據(jù)庫(kù)執(zhí)行查詢、插入、更新和刪除操作, 編寫PL/SQL存儲(chǔ)程序、包和觸發(fā)器。 創(chuàng)建數(shù)據(jù)庫(kù)表、序列、索引、視圖和用戶, 使用SQL*Plus來(lái)執(zhí)行SQL語(yǔ)句、腳本和報(bào)表。 使用分析函數(shù)進(jìn)行復(fù)雜的運(yùn)算, 了解通過(guò)JDBC,使用Java運(yùn)行SQL的基本知識(shí)。 使用大對(duì)象來(lái)存儲(chǔ)128 TB以內(nèi)的字符和二進(jìn)制數(shù)據(jù), 定義數(shù)據(jù)庫(kù)類型,并創(chuàng)建對(duì)象來(lái)處理高級(jí)數(shù)據(jù)。 使用Oracle Database 10g中的所有新特性,如BINARY_FLOAT和BINARY_DOUBLE類型、MODEL子句,等等。 使用優(yōu)化技術(shù)實(shí)現(xiàn)真正高效率的SQL語(yǔ)句。
圖書封面
圖書標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
Oracle Database 10g SQL開發(fā)指南 PDF格式下載