從零開始學Oracle

明日科技

  • 出版商: 化學工業
  • 出版日期: 2022-08-01
  • 定價: $534
  • 售價: 8.0$427
  • 語言: 簡體中文
  • 頁數: 274
  • 裝訂: 平裝
  • ISBN: 7122412687
  • ISBN-13: 9787122412683
  • 相關分類: Oracle
  • 立即出貨 (庫存 < 4)

買這商品的人也買了...

商品描述

本書從零基礎讀者的角度出發,通過通俗易懂的語言、豐富多彩的實例,
循序漸進地讓讀者在實踐中學習Oracle編程知識,並提升自己的實際開發能力。
全書共分為5篇18章,內容包括Oracle 19c概述、Oracle管理工具、SQL*Plus命令、數據表操作、
SQL查詢基礎、SQL查詢進階、子查詢、常用系統函數、PL/SQL語言編程、游標、過程與函數、觸發器、
索引和視圖、完整性約束、管理表空間和數據文件、事務、數據導入與導出和企業人事管理系統等。
書中知識點講解細緻,側重介紹每個知識點的使用場景,涉及的代碼給出了詳細的註釋,
可以使讀者輕鬆領會Oracle的精髓,快速提高開發與運維技能。
同時,本書配套了大量教學視頻,掃碼即可觀看,還提供所有程序源文件,方便讀者實踐。
本書適合Oracle初學者、數據庫技術入門者自學使用,也可用作高等院校相關專業的教材及參考書。

目錄大綱

第1篇 基礎知識篇
第1章 Oracle 19c概述 2 視頻講解:8節,57分鐘
1.1 數據庫的產生 3
1.2 數據庫基本概念 4
1.2.1 數據、數據庫、數據庫管理系統和數據庫系統 4
1.2.2 數據庫的標準語言——SQL 6
1.3 Oracle簡介 7
1.3.1 Oracle公司介紹 7
1.3.2 Oracle體系介紹 8
1.4 Oracle數據庫環境 9
1.4.1 Oracle數據庫版本簡介 9
1.4.2 Oracle 19c的下載與安裝 10
1.4.3 Oracle 19c的卸載 16
本章知識思維導圖 18

第2章 Oracle管理工具 19 視頻講解:9節,61分鐘
2.1 SQL*Plus工具 20
2.1.1 啟動SQL*Plus 20
2.1.2 使用SQL*Plus連接SCOTT用戶 21
2.1.3 使用SQL*Plus查詢數據庫 23
[實例2.1] 查詢scott用戶中的部門信息表(dept)中的所有信息 23
2.1.4 退出SQL*Plus 24
2.2 SQL Developer工具 25
2.2.1 SQL Developer工具的下載與啟動 25
2.2.2 創建數據庫連接 27
2.2.3 使用SQL Developer查詢數據庫 29
[實例2.2] 查詢員工信息表(emp表)的信息 29
2.3 企業管理器(OEM) 31
2.4 數據庫配置助手(DBCA) 32
本章知識思維導圖 33

第3章 SQL*Plus命令 34 視頻講解:11節,112分鐘
3.1 SQL*Plus與數據庫的交互 35
3.2 設置SQL*Plus的運行環境 35
3.2.1 SET命令簡介 36
3.2.2 使用SET命令設置運行環境 37
[實例3.1] 修改SQL*Plus一頁顯示的行數 38
[實例3.2] 設置合適的SQL*Plus顯示效果 39
[實例3.3] 修改每頁頂部的空行數量 40
3.3 常用的SQL*Plus命令 41
3.3.1 HELP命令 41
[實例3.4] 查看SQL*Plus命令清單 41
3.3.2 DESCRIBE命令 42
[實例3.5] 查看員工信息表的結構 42
3.3.3 CONN命令 44
[實例3.6] 連接SYS用戶 44
3.3.4 加入註釋 44
[實例3.7] 使用“/*...*/”添加註釋 45
[實例3.8] 使用“--”添加註釋 45
3.4 格式化SQL*Plus輸出 46
3.4.1 格式化列 46
[實例3.9] 將英文列標題改為中文列標題 47
[實例3.10] 格式化員工姓名列的寬度 48
3.4.2 定義頁與報告的標題 48
[實例3.11] 設置頭標題和底標題 49
本章知識思維導圖 50

第4章 數據表操作 51 視頻講解:13節,73分鐘
4.1 數據表概述 52
4.2 表與表結構操作 52
4.2.1 Oracle常用數據類型 52
4.2.2 表和表結構 53
4.2.3 表結構設計 54
4.3 使用SQL Developer操作表 55
4.3.1 創建表 56
4.3.2 修改表 57
4.3.3 刪除表 57
4.4 在SQL *Plus上操作表 58
4.4.1 創建表 58
[實例4.1] 創建表XSB 58
[實例4.2] 向XSB中增加數據 59
4.4.2 修改表 60
[實例4.3] 向XSB中增加3個字段 60
[實例4.4] 將XSB中BZ字段的長度修改為20 62
[實例4.5] 刪除XSB的PHOTO和ADDR字段 62
4.4.3 刪除表 63
本章知識思維導圖 63

第5章 SQL查詢基礎 64 視頻講解:17節,65分鐘
5.1 SQL簡介 65
5.1.1 SQL的分類 65
5.1.2 SQL的編寫規則 65
5.2 SELECT語句簡介 68
5.3 查詢所有列 69
5.3.1 查詢單個表中所有列 69
[實例5.1] 查詢部門信息表中的所有數據 69
5.3.2 查詢多個表中所有列 70
[實例5.2] 查詢dept和salgrade中的所有數據 70
5.4 查詢特定列 71
5.4.1 查詢特定列 71
[實例5.3] 查詢員工信息表中指定的列 71
5.4.2 偽列 72
[實例5.4] 查詢員工信息表中的偽列 72
5.5 消除重複行 72
5.5.1 查詢結果中包含重複行 73
5.5.2 查詢結果中消除重複行 73
[實例5.5] 查詢員工信息表中不重複的職務 73
5.6 帶有表達式的SELECT子句 74
[實例5.6] 將員工信息表中的工資調整為原來的1.5倍 74
5.7 為列指定別名 74
5.7.1 不使用列別名 75
5.7.2 使用列別名 75
[實例5.7] 為查詢出的列設置別名 76
5.8 處理NULL 77
5.8.1 不處理NULL 77
5.8.2 使用NVL函數處理NULL 77
[實例5.8] 使用NVL函數來處理實發工資 78
5.8.3 使用NVL2函數處理NULL 78
[實例5.9] 使用NVL2函數來處理實發工資 78
5.9 連接字符串 79
5.9.1 使用“||”操作符連接字符串 79
[實例5.10] 使用“||”操作符連接字符串 79
5.9.2 使用函數CONCAT連接字符串 80
[實例5.11] 使用函數CONCAT連接字符串 80
本章知識思維導圖 81

第6章 SQL查詢進階 82 視頻講解:17節,87分鐘
6.1 篩選查詢 83
6.1.1 比較篩選 83
[實例6.1] 查詢工資大於1500的員工信息 83
6.1.2 邏輯查詢(AND、OR和NOT) 84
[實例6.2] 查詢工資大於1500的銷售員信息 84
6.1.3 模糊查詢(LIKE、NOT LIKE) 85
[實例6.3] 查詢姓名中任意位置包含字母F的員工信息 85
[實例6.4] 查詢職務是SALESMAN的員工姓名 85
6.1.4 列表範圍查找(IN、NOT IN) 86
[實例6.5] 查詢指定員工編號之外的員工信息 86
6.1.5 範圍查詢(BETWEEN…AND) 87
[實例6.6] 查詢工資在一定範圍內的員工信息 87
6.1.6 判斷內容是否為NULL(IS NULL、
IS NOT NULL) 87
[實例6.7] 列出所有不領取獎金,同時工資大於2000的全部員工的信息 88
6.2 分組查詢 88
6.2.1 使用GROUP BY進行單字段分組 89
[實例6.8] 分組後應用統計函數 89
6.2.2 使用GROUP BY進行多字段分組 90
[實例6.9] 顯示每個部門每種職位的平均工資和最高工資 90
6.2.3 使用HAVING子句限制分組結果 91
[實例6.10] 統計出平均工資大於1500的部門的記錄信息 91
6.3 排序查詢 92
6.3.1 單列排序 92
[實例6.11] 按照平均工資由低到高排序顯示員工信息 92
6.3.2 多列排序 92
[實例6.12] 按照工資由高到低排序,如果工資相同則按照入職日期由早到晚進行排序 93
6.4 多表關聯查詢 93
6.4.1 表別名 93
[實例6.13] 查詢經理所在的部門名稱 94
6.4.2 內連接 94
[實例6.14] 內連接員工信息表和部門信息表 95
6.4.3 外連接 95
[實例6.15] 對員工信息表和部門信息表進行左外連接 96
[實例6.16] 對員工信息表和部門信息表進行右外連接 97
[實例6.17] 對員工信息表和部門信息表進行完全外連接 97
6.4.4 自然連接 98
[實例6.18] 對員工信息表和部門信息表進行自然連接 98
6.4.5 自連接 98
[實例6.19] 查詢所有管理者所管理的下屬員工信息 99
6.4.6 交叉連接 100
[實例6.20] 計算兩個表交叉連接得出結果的行數 101
本章知識思維導圖 101

第7章 子查詢 102 視頻講解:8節,46分鐘
7.1 初識子查詢 103
[實例7.1] 查詢部門名稱為SALES的員工信息 103
7.2 單行子查詢 104
[實例7.2] 查詢既不是最高工資也不是最低工資的員工信息 104
7.3 多行子查詢 105
7.3.1 使用IN運算符 105
[實例7.3] 查詢不是銷售部門的員工信息 105
7.3.2 使用ANY運算符 105
[實例7.4] 查詢工資大於20號部門的任意一個員工工資的其他部門的員工信息 106
7.3.3 使用ALL運算符 106
[實例7.5] 查詢工資大於部門編號為20的所有員工工資的員工信息 106
7.4 操作數據庫(數據操縱語言) 107
7.4.1 插入數據(INSERT語句) 107
[實例7.6] 向部門表中插入一條數據 108
[實例7.7] 批量向表emp_temp中插入數據 109
7.4.2 更新數據(UPDATE語句) 110
[實例7.8] 將工資低於公司平均工資的員工的工資上漲20% 111
[實例7.9] 修改員工號為7900的入職時間 112
[實例7.10] 調整低薪員工的工資 112
7.4.3 刪除數據(DELETE語句和TRUNCATE語句) 113
[實例7.11] 刪除30號部門內的所有員工信息 113
本章知識思維導圖 115

第8章 常用系統函數 116 視頻講解:5節,30分鐘
8.1 字符類函數 117
[實例8.1] 連接兩個字符串 117
[實例8.2] 查詢姓名前3個字母是ALL的員工信息 118
8.2 數字類函數 118
[實例8.3] 查詢員工的基本信息和日基本工資 119
[實例8.4] 使用TRUNC()函數求日基本工資 119
8.3 日期和時間類函數 120
8.3.1 SYSDATE函數 120
8.3.2 ADD_MONTHS(d,i)函數 121
[實例8.5] 使用ADD_MONTHS()函數計算日期值 121
8.4 轉換類函數 121
[實例8.6] 以“YYYY-MM-DD”格式輸出當前日期 122
8.5 聚集類函數 122
本章知識思維導圖 123

第2篇 數據庫編程篇
第9章 PL/SQL語言編程 126 視頻講解:15節,90分鐘
9.1 PL/SQL簡介 127
9.1.1 PL/SQL塊結構 127
[實例9.1] 輸出變量值 128
9.1.2 代碼註釋 128
9.1.3 標識符 129
9.1.4 分界符 130
9.2 數據類型 130
9.2.1 基本數據類型 131
9.2.2 數值型 131
[實例9.2] 定義NUMBER型數據變量 132
9.2.3 字符型 132
[實例9.3] 輸出CHAR和VARCHAR2類型變量的長度 133
9.2.4 日期型 134
[實例9.4] 輸出當前日期值和指定的日期值 134
9.2.5 布爾型 135
9.3 變量的聲明與賦值 135
9.3.1 定義一般變量 136
[實例9.5] 輸出兩個數之和 136
9.3.2 使用%TYPE聲明變量類型 137
[實例9.6] 根據員工編號得到對應的員工姓名 137
9.3.3 使用RECORD聲明變量類型 138
[實例9.7] 使用RECORD類型變量查詢員工編號為7369的員工信息 138
9.3.4 使用%ROWTYPE聲明變量 139
[實例9.8] 使用%ROWTYPE類型的變量輸出部門信息表中部門編號為20的部門信息 139
9.4 流程控制語句 140
9.4.1 選擇語句 140
[實例9.9] 指定月份數值,使用IF…THEN…ELSIF語句判斷它所屬的季節,並輸出季節信息 141
[實例9.10] 指定一個季度數值,然後使用CASE語句判斷它所包含的月份信息並輸出 143
9.4.2 循環語句 144
[實例9.11] 實現前100個自然數求和運算 145
[實例9.12] 求得前100個自然數中奇數之和 146
本章知識思維導圖 147

第10章 游標 148 視頻講解:12節,27分鐘
10.1 游標簡介 149
10.2 隱式游標 149
[實例10.1] 應用隱式游標輸出調整工資的員工的數量 150
10.3 顯式游標 151
10.3.1 聲明游標 151
[實例10.2] 聲明游標cur_emp 151
10.3.2 打開游標 152
10.3.3 讀取游標 152
10.3.4 關閉游標 152
[實例10.3] 使用游標讀取員工信息 153
10.3.5 顯式游標的屬性 154
10.4 游標變量 154
10.4.1 聲明游標變量 155
[實例10.4] 定義一個dept類型的游標變量 155
10.4.2 打開游標變量 156
10.4.3 關閉游標變量 156
[實例10.5] 使用游標變量讀取部門信息 156
10.5 通過FOR語句遍歷游標 157
10.5.1 隱式游標中使用FOR語句 157
[實例10.6] 查詢出職務是銷售員的員工信息並輸出 157
10.5.2 顯式游標中使用FOR語句 157
[實例10.7] 查詢出部門編號是10的員工的員工信息 158
本章知識思維導圖 159

第11章 存儲過程與函數 160 視頻講解:7節,36分鐘
11.1 存儲過程 161
11.1.1 創建存儲過程 161
[實例11.1] 創建存儲過程pro_SELECTEmp 161
11.1.2 執行存儲過程 162
[實例11.2] 執行pro_SELECTEmp存儲過程 162
11.1.3 存儲過程的參數 163
[實例11.3] 聲明一個帶有IN模式參數的存儲過程 163
[實例11.4] 聲明一個帶有OUT模式參數的存儲過程 164
[實例11.5] 聲明一個帶有IN OUT模式參數的存儲過程 166
11.1.4 刪除存儲過程 167
11.2 函數 167
11.2.1 創建函數 167
[實例11.6] 定義函數,用於計算某個部門的員工最高工資 167
11.2.2 調用函數 168
[實例11.7] 調用函數,計算10號部門的員工最高工資 168
11.2.3 刪除函數 169
本章知識思維導圖 169

第12章 觸發器 170 視頻講解:5節,38分鐘
12.1 觸發器簡介 171
12.2 語句級觸發器 172
[實例12.1] 創建語句級觸發器並執行此觸發器 172
12.3 行級觸發器 174
[實例12.2] 使用行級觸發器生成數據表中的主鍵值 174
12.4 替換觸發器 177
[實例12.3] 創建並使用替換觸發器 177
12.5 刪除觸發器 179
本章知識思維導圖 179

第13章 索引和視圖 180 視頻講解:7節,77分鐘
13.1 索引對象 181
13.1.1 索引概述 181
13.1.2 創建索引 182
[實例13.1] 為員工信息表emp的部門編號列deptno創建索引 183
[實例13.2] 為部門信息表dept的dname字段設置位圖索引 183
[實例13.3] 為員工信息表emp的job列創建反向鍵索引 184
[實例13.4] 為員工信息表emp的職位job列創建函數索引 186
13.1.3 合併和重建索引 186
[實例13.5] 對索引emp_deptno_index執行合併操作 186
13.1.4 刪除索引 187
13.1.5 顯示索引信息 188
13.2 視圖對象 189
13.2.1 創建視圖 190
[實例13.6] 創建一個查詢部門編號為10的視圖 190
[實例13.7] 建立只讀視圖emp_VIEW_readonly 191
[實例13.8] 建立復雜視圖emp_VIEW_ complex 191
[實例13.9] 建立連接視圖emp_VIEW_union 192
13.2.2 管理視圖 193
[實例13.10] 修改視圖emp_VIEW_union 193
本章知識思維導圖 195

第3篇 核心技術篇
第14章 完整性約束 198 視頻講解:16節,111分鐘
14.1 完整性約束簡介 199
14.2 非空約束 199
14.2.1 設置非空約束 199
[實例14.1] 創建圖書表Books,其中含有非空約束的列 199
14.2.2 修改非空約束 200
14.2.3 刪除非空約束 200
14.3 唯一性約束 200
14.3.1 設置唯一性約束 200
[實例14.2] 創建會員表Members,其中含有唯一性約束的列 200
14.3.2 刪除唯一性約束 201
14.4 主鍵約束 202
14.4.1 創建表的同時設置主鍵約束 202
[實例14.3] 創建教師個人信息表teacher,並定義主鍵約束 202
14.4.2 創建表之後添加主鍵約束 202
14.4.3 刪除主鍵約束 203
14.5 外鍵約束 204
14.5.1 設置外鍵約束 204
[實例14.4] 設置外鍵約束 204
14.5.2 刪除具有外鍵約束的表 205
14.5.3 刪除外鍵約束 206
14.6 禁用和激活約束 206
14.6.1 在定義約束時禁用 206
[實例14.5] 在定義約束時禁用約束 207
14.6.2 禁用已經存在的約束 207
14.6.3 激活約束 208
14.7 刪除約束 208
本章知識思維導圖 209

第15章 管理表空間和數據文件 210 視頻講解:10節,65分鐘
15.1 表空間與數據文件的關係 211
15.2 Oracle的默認表空間 212
15.2.1 SYSTEM表空間 212
15.2.2 SYSAUX表空間 213
15.3 創建表空間 213
15.3.1 通過本地化管理方式創建表空間 215
[實例15.1] 通過本地管理創建表空間tbs_test_1 215
15.3.2 通過段空間管理方式創建表空間 216
[實例15.2] 通過手工段空間管理方式創建表空間tbs_mr_1 216
15.4 維護表空間與數據文件 217
15.4.1 設置默認表空間 217
15.4.2 更改表空間的狀態 217
15.4.3 重命名表空間 218
15.4.4 刪除表空間 218
[實例15.3] 刪除表空間tbs_test_2 219
15.4.5 維護表空間中的數據文件 219
[實例15.4] 將表空間TBS_TEST_2設置為自動擴展 220
本章知識思維導圖 221

第4篇 高級應用篇
第16章 事務 224 視頻講解:6節,17分鐘
16.1 事務的概述 225
16.1.1 事務的特性 225
16.1.2 事務的狀態 226
16.2 操作事務 227
16.2.1 設置事務 227
16.2.2 提交事務(COMMIT語句) 228
[實例16.1] 使用COMMIT語句提交事務 229
16.2.3 回滾事務(ROLLBACK語句) 230
[實例16.2] 使用ROLLBACK語句撤銷事務 230
16.2.4 設置回退點 231
[實例16.3] 使用保存點(SAVEPOINT)回滾記錄 231
本章知識思維導圖 232

第17章 數據導入與導出 233 視頻講解:12節,20分鐘
17.1 EXPDP和IMPDP概述 234
17.2 EXPDP導出數據 234
17.2.1 導出數據時的準備 234
17.2.2 導出表 235
[實例17.1] 導出dept表和emp表 235
17.2.3 導出模式 236
17.2.4 導出表空間 237
17.2.5 導出全數據庫 237
17.3 IMPDP導入數據 238
17.3.1 導入表 238
17.3.2 導入模式 238
17.3.3 導入表空間 238
17.3.4 導入全數據庫 239
17.4 圖形界面導入導出數據 239
17.4.1 通過SQL Developer導出數據 239
17.4.2 通過SQL Developer導入數據 243
本章知識思維導圖 244

第5篇 項目開發篇
第18章 企業人事管理系統 246 視頻講解:1節,6分鐘
18.1 開發背景 247
18.2 系統分析 247
18.3 系統設計 247
18.3.1 系統目標 247
18.3.2 系統功能結構 247
18.3.3 系統預覽 248
18.3.4 業務流程圖 250
18.3.5 文件夾結構設計 251
18.4 數據庫設計 251
18.4.1 數據庫分析 251
18.4.2 數據庫概念設計 251
18.4.3 數據庫邏輯結構設計 252
18.5 主窗體設計 253
18.5.1 導航欄的設計 253
18.5.2 工具欄的設計 255
18.6 公共模塊設計 257
18.6.1 編寫Hibernate配置文件 257
18.6.2 編寫Hibernate持久化類和映射文件 257
18.6.3 編寫通過Hibernate操作持久化對象的常用方法 258
18.6.4 創建具有特殊效果的部門樹對話框 259
18.6.5 創建通過部門樹選取員工的面板和對話框 260
18.7 人事管理模塊設計 262
18.7.1 人事管理模塊功能概述 262
18.7.2 人事管理模塊技術分析 263
18.7.3 人事管理模塊的實現過程 264
18.8 待遇管理模塊設計 268
18.8.1 待遇管理模塊功能概述 268
18.8.2 待遇管理模塊技術分析 269
18.8.3 待遇管理模塊的實現過程 269
本章知識思維導圖 274