內容簡介
《名師講壇——Oracle開發實戰經典》以Oracle 11g、12c版本為基礎,通過豐富的實例、
通俗易懂的語言、簡潔明快的圖示、極為詳盡的視頻,講述了資料庫開發的主要內容。
全書分為3個部分,第1部分:Oracle開發前奏,主要包括資料庫系統概述、Oracle的安裝與基本使用;第2部分:SQL基礎語法,主要內容有簡單查詢、限定查詢與排序顯示、單行函式、多表查詢、分組統計查詢、子查詢、更新及事務處理、替代變數、表的創建與管理、完整性約束、其他資料庫對象、用戶許可權及角色管理、資料庫設計;第3部分:資料庫編程,主要內容有PL/SQL編程基礎、集合、游標、子程式、包、觸發器、動態SQL、面向對象編程。。
《名師講壇——Oracle開發實戰經典》還有如下特點:
1.視頻極為詳盡:視頻長達45小時,共126講,力求將Oracle開發必備知識一網打盡。
2.實例案例教學:1200項各類實例案例,力求將Oracle開發必備知識徹底講透。
3.全方位服務:論壇、網站、二維碼、微信等多種服務力求解答本書所有疑問。
4.知名講師編著:由有多年開發和授課經驗、連續7年獲得教師稱號的知名講師編著。
5.教師服務:高校教師還可以獲得教學大綱、電子課件、學習筆記等多種資源。
《名師講壇:Oracle開發實戰經典(附DVD-ROM光碟2張)》適合Oracle開發入門者學習使用,也可以作為Oracle開發人員的參考書。
圖書目錄
第1部分 Oracle開發前奏
第1章 資料庫系統概述
( 視頻講解:1小時10分鐘)
1.1 資料庫的產生動機
1.2 數據、資料庫、資料庫管理系統、資料庫系統
1.3 數據管理與資料庫系統的特點
1.4 數據模型
1.4.1 兩類數據模型
1.4.2 概念模型
1.4.3 數據模型
1.4.4 關係模型基礎
1.5 SQL概述
提示:關於NOSQL技術
1.6 本章小結
第2章 Oracle的安裝與基本使用
( 視頻講解:1小時40分鐘)
2.1 Oracle簡介
2.2 安裝Oracle資料庫
提示:關於CDB與PDB
注意:如果不進行口令配置,有可能某些用戶為鎖定狀態
2.3 Oracle體系結構
提示:Oracle伺服器、Oracle實例(instance)、Oracle資料庫(database)的關係
2.3.1 Oracle實例體系
2.3.2 Oracle物理體系
2.4 Oracle監聽服務
2.4.1 註冊表被破壞導致監聽無法啟動
2.4.2 計算機名稱修改導致監聽無法啟動
2.4.3 監聽工具LSNRCTL
2.5 SQLPlus簡介
2.6 SQLPlus常用命令
提示:關於sqlplus.exe工具的補充說明
提示:sqlplusw.exe的輸入形式
提示:需要設定命令行格式
2.7 配置SQL Developer
2.8 c##scott用戶表
2.8.1 部門表dept
2.8.2 雇員表emp
2.8.3 工資等級表salgrade
2.8.4 工資補貼表bonus
2.9 本章小結
第2部分 SQL基礎語法
第3章 簡單查詢
( 視頻講解:35分鐘)
3.1 簡單查詢語句
提示:關於null的問題
提示:關於SQL中的投影概念
3.2 其他簡單查詢
3.3 本章小結
第4章 限定查詢與排序顯示
( 視頻講解:1小時12分鐘)
4.1 限定查詢
4.1.1 認識限定查詢
提示:一般在執行查詢之前都先查看一下表中的記錄數
4.1.2 對數據進行限定查詢
提示:閱讀查詢語句的小技巧
注意:在使用NOT IN操作符時列表不能有NULL
4.2 對結果排序:ORDER BY
提示:語句執行順序
4.3 本章小結
第5章 單行函式
( 視頻講解:2小時6分鐘)
5.1 單行函式簡介
5.2 字元函式
5.3 數值函式
5.4 日期函式
提示:關於日期和數字的問題
5.5 轉換函式
注意:建議保留前導0
提示:關於數據的隱式轉換操作
5.6 通用函式
5.7 本章小結
第6章 多表查詢
( 視頻講解:1小時30分鐘)
6.1 多表查詢的基本語法
提示:關於笛卡爾積的代數表示
提示:關於笛卡爾積的消除
6.2 多表查詢實例
6.3 表的連線操作
提示:左外連線與右外連線的操作
6.4 自身關聯
6.5 SQL:1999語法
6.5.1 交叉連線
6.5.2 自然連線
提示:自然連線的操作
6.5.3 USING子句
6.5.4 ON子句
提示:關於θ連線
6.5.5 外連線
6.6 數據的集合運算
6.7 本章小結
第7章 分組統計查詢
( 視頻講解:1小時20分鐘)
7.1 統計函式
7.2 單欄位分組統計
提示:分享一下個人的分組規律
7.3 多欄位分組統計
7.4 HAVING子句
7.5 本章小結
第8章 子查詢
( 視頻講解:4小時3分鐘)
8.1 認識子查詢
8.2 在WHERE子句中使用子查詢
8.2.1 子查詢返回單行單列數據
8.2.2 子查詢返回單行多列數據
8.2.3 子查詢返回多行單列數據
提示:關於SOME操作符
8.2.4 空數據判斷
8.3 在HAVING子句中使用子查詢
8.4 在FROM子句中使用子查詢
8.5 在SELECT子句中使用子查詢
8.6 WITH子句
8.7 分析函式
8.7.1 分析函式基本語法
提示:關於“分組”與“分區”
8.7.2 分析函式範例
8.8 行列轉換
提示:使用XML與ANY
8.9 設定數據層次
8.10 本章小結
第9章 更新及事務處理
( 視頻講解:1小時32分鐘)
9.1 更新操作前的準備
9.2 數據的增加操作
9.2.1 增加數據
9.2.2 增加子查詢結果數據
9.3 數據的更新操作
9.3.1 由用戶指定更新數據
9.3.2 使用已有數據更新數據表
9.4 數據的刪除操作
9.5 事務處理
9.6 鎖
9.6.1 行級鎖定
9.6.2 表級鎖定
9.6.3 解除鎖定
9.7 本章小結
第10章 替代變數
( 視頻講解:43分鐘)
10.1 替代變數的基本概念
10.2 替代變數的詳細說明
10.3 定義替代變數
10.4 ACCEPT指令
10.5 本章小結
第11章 表的創建與管理
( 視頻講解:1小時48分鐘)
11.1 數據表的基本概念
11.2 Oracle常用數據類型
11.3 表的創建
11.4 表的複製
11.5 數據表重命名
11.6 截斷表
11.7 表的刪除
11.8 閃回技術(FlashBack)
11.9 修改表結構
11.10 添加注釋
11.11 設定可見/不可見欄位
11.12 表空間
提示:關於資料庫系統的三級模式結構
提示:關於資料庫、表空間、表的簡單理解
提示:關於非系統表空間的稱呼
11.12.1 創建表空間
提示:Oracle中的默認表空間
11.12.2 使用表空間
11.13 本章小結
第12章 完整性約束
( 視頻講解:2小時20分鐘)
12.1 資料庫完整性約束簡介
12.2 非空約束NK
12.3 唯一約束UK
12.4 主鍵約束PK
12.5 檢查約束CK
12.6 主-外鍵約束FK
12.7 查看約束
12.8 修改約束
注意:在為表中添加約束時一定要保證表中的數據沒有違反約束
12.9 資料庫綜合實戰
12.9.1 建立數據表
12.9.2 為數據表增加數據
12.9.3 數據操作
12.10 本章小結
第13章 其他資料庫對象
( 視頻講解:2小時46分鐘)
13.1 視圖
13.1.1 創建視圖
提示:關於Oracle 12c創建視圖時出現的許可權不足的錯誤
13.1.2 在視圖上執行DML操作
13.1.3 WITH CHECK OPTION子句
13.1.4 WITH READ ONLY子句
13.1.5 刪除視圖
13.2 序列
13.2.1 序列的作用及創建
13.2.2 序列的刪除
13.2.3 創建特殊功能的序列
提示:設定快取有可能造成跳號的情況
13.2.4 修改序列
13.2.5 自動序列
注意:自動序列對象的刪除
13.3 同義詞
13.4 Oracle偽列
13.4.1 ROWID偽列
13.4.2 ROWNUM偽列
13.4.3 Oracle 12c新特性FETCH
13.5 索引
提示:關於索引深層次學習
13.5.1 B*Tree索引
提示:關於全表掃描
13.5.2 點陣圖索引
13.5.3 刪除索引
13.6 本章小結
第14章 用戶許可權及角色管理
( 視頻講解:1小時23分鐘)
14.1 用戶管理
14.1.1 創建用戶
注意:Oracle 12c的新限制
14.1.2 概要檔案(profiles)
14.1.3 維護用戶
14.1.4 刪除用戶
注意:刪除用戶是一個危險操作
14.2 許可權管理
14.2.1 系統許可權
提示:SYSOPER和SYSDBA許可權
提示:用戶SESSION連線
14.2.2 對象許可權
14.3 角色
14.3.1 創建角色
14.3.2 角色授權
14.3.3 為用戶授予角色
14.3.4 修改角色及回收角色許可權
14.3.5 刪除角色
14.3.6 預定義角色
14.4 本章小結
第15章 資料庫設計
( 視頻講解:1小時36分鐘)
15.1 資料庫設計概述
15.2 概念模型與E-R圖概述
15.2.1 實體
15.2.2 屬性
15.2.3 聯繫
15.2.4 E-R模型實例
15.3 資料庫設計範式
15.3.1 第一範式(1NF)
15.3.2 第二範式(2NF)
提示:關於函式依賴的解釋
15.3.3 第三範式(3NF)
15.3.4 鮑依斯-科得範式(BCNF)
15.4 Sybase PowerDesigner設計工具
15.4.1 概念模型設計
15.4.2 物理數據模型設計
15.5 資料庫設計案例
15.5.1 功能描述
15.5.2 概念模型
15.5.3 物理數據模型
15.6 本章小結
第3部分 資料庫編程
第16章 PL/SQL編程基礎
( 視頻講解:3小時)
16.1 PL/SQL簡介
16.2 變數的聲明與賦值
16.2.1 聲明並使用變數
提示:關於Oracle關鍵字說明
注意:PL/SQL中的變數不區分大小寫
16.2.2 使用%TYPE聲明變數類型
16.2.3 使用%ROWTYPE聲明變數類型
16.3 運算符
16.3.1 賦值運算符
16.3.2 連線運算符
16.3.3 關係運算符
16.3.4 邏輯運算符
16.4 數據類型劃分
16.5 標量類型
16.5.1 數值型
提示:關於數據溢出問題
16.5.2 字元型
16.5.3 日期型
16.5.4 布爾型
16.5.5 子類型
16.6 程式結構
16.6.1 分支結構
提示:Oracle也支持正則驗證
16.6.2 循環結構
16.6.3 循環控制
16.6.4 GOTO語句
16.7 內部程式塊
16.8 異常處理
16.8.1 異常簡介
16.8.2 使用EXCEPTION來處理異常
16.8.3 用戶自定義異常
16.9 本章小結
第17章 集合
( 視頻講解:2小時52分鐘)
17.1 記錄類型
17.2 索引表
17.3 嵌套表
17.3.1 定義簡單類型嵌套表
17.3.2 定義複合類型嵌套表
17.3.3 在PL/SQL中使用嵌套表
17.4 可變數組
17.4.1 定義簡單類型的可變數組
17.4.2 定義複合類型的可變數組
17.4.3 在PL/SQL中使用可變數組
17.5 集合運算符
17.6 集合函式
17.7 處理集合異常
17.8 使用FORALL批量綁定
17.9 BULK COLLECT批量接數據
17.10 本章小結
第18章 游標
( 視頻講解:1小時19分鐘)
18.1 游標簡介
18.2 隱式游標
18.3 顯式游標
18.4 修改游標數據
18.4.1 FOR UPDATE子句
18.4.2 WHERE CURRENT OF子句
18.5 游標變數
18.6 本章小結
第19章 子程式
( 視頻講解:2小時26分鐘)
19.1 子程式定義
19.1.1 定義過程
19.1.2 定義函式
19.2 查詢子程式
19.3 刪除子程式
19.4 參數模式
提示:不再重複演示函式的參數模式
19.5 子程式嵌套
19.6 NOCOPY選項
19.7 自治事務
19.8 子程式許可權
19.9 利用Java調用子程式
19.10 本章小結
第20章 包
( 視頻講解:1小時38分鐘)
20.1 包的定義及使用
20.1.1 包的基本概念
20.1.2 重新編譯包
20.1.3 包的作用域
20.1.4 重載包中的子程式
20.1.5 包的初始化
20.1.6 包的純度級別
注意:關於公用函式的說明
20.2 系統工具包
20.2.1 DBMS_OUTPUT包
20.2.2 DBMS_JOB包與資料庫作業
20.2.3 DBMS_ASSERT包
提示:利用DBMS_ASSERT可以解決SQL注入攻擊
20.2.4 DBMS_LOB包
20.3 本章小結
第21章 觸發器
( 視頻講解:3小時30分鐘)
21.1 觸發器簡介
21.2 DML觸發器
21.3 表級DML觸發器
21.4 行級DML觸發器
21.4.1 使用“:old.欄位”和“:new.欄位”標識符
注意:不能將“:new”或“:old”設定為ROWTYPE類型
21.4.2 使用REFERENCING子句設定別名
21.4.3 使用WHEN子句定義觸發條件
21.4.4 觸發器謂詞
21.4.5 使用FOLLOWS子句
21.5 變異表
21.6 複合觸發器
21.7 instead-of觸發器
21.7.1 在視圖上定義替代觸發器
21.7.2 在嵌套表上定義替代觸發器
21.8 DDL觸發器
21.9 系統觸發器
21.10 管理觸發器
提示:Oracle 11g之後可以建立禁用觸發器
21.11 觸發器中調用子程式
21.12 本章小結
第22章 動態SQL
( 視頻講解:1小時17分鐘)
22.1 動態SQL簡介
提示:如果不使用EXECUTE IMMEDIATE,則程式會出現錯誤
提示:在get_table_count_fun函式執行時可能出現“ORA-01031:許可權不足”錯誤提示
22.2 EXECUTE IMMEDIATE語句
22.2.1 執行動態SQL
22.2.2 設定綁定變數
22.2.3 接收DML更新行數
提示:也可以使用RETURN接收影響數據行的數據
22.3 批量綁定
22.4 處理游標操作
22.5 DBMS_SQL包簡介
22.6 本章小結
第23章 面向對象編程
( 視頻講解:2小時35分鐘)
23.1 面向對象簡介
23.2 類與對象
23.3 定義對象類型——類
23.4 操作類中的其他結構
23.4.1 定義函式
23.4.2 構造函式
提示:關於默認構造函式
23.4.3 定義MAP與ORDER函式
23.4.4 對象嵌套關係
23.4.5 繼承性
23.4.6 函式覆寫
23.4.7 對象多態性
23.4.8 使用FINAL關鍵字
23.4.9 定義抽象函式
23.5 對象表
23.5.1 創建對象表
23.5.2 維護對象表數據
23.6 對象視圖
23.7 本章小結
作者簡介
李興華,知名Java、Oracle、Android高級講師,北京魔樂科技軟體實訓中心(MLDN)教學總監、首席講師。8年軟體開發經驗,10年高端培訓經驗,先後為40多家大中型企業做過培訓,在Java、Oracle、Android培訓方面享有很高的知名度。
馬雲濤,計算機技術專業碩士,慧科教育集團副總裁,負責該集團合作院校的碩士層面的整體教學運營工作。該集團合作院校的碩士專業涵蓋移動雲計算、大數據技術、物聯網、戰略管理與網際網路行銷、網際網路教育等多個領域。他還同時擔任多個高校和企業的諮詢顧問,組織並設計過多項基於B/S結構的大型項目系統構架。