關(guān)于我們
書單推薦
新書推薦
|
Oracle數(shù)據(jù)庫管理與開發(fā) 慕課版
本書作為Oracle程序設(shè)計的教程,系統(tǒng)、全面地介紹了有關(guān)Oracle程序開發(fā)所涉及的各方面知識。全書共分13章,內(nèi)容包括數(shù)據(jù)庫的基本概念與Oracle環(huán)境、數(shù)據(jù)庫創(chuàng)建、表與表數(shù)據(jù)操作、數(shù)據(jù)庫的查詢和視圖、索引和數(shù)據(jù)的完整性、PL/SQL語言介紹、存儲過程和觸發(fā)器、高級數(shù)據(jù)類型、系統(tǒng)安全管理、備份和恢復(fù)、閃回操作和Undo表空間、其他概念、課程設(shè)計——企業(yè)人事管理系統(tǒng)。全書每章內(nèi)容都與實例緊密結(jié)合,有助于學(xué)生理解知識、應(yīng)用知識,達到學(xué)以致用的目的。
本書是慕課版教材,各章節(jié)主要內(nèi)容配備了以二維碼為載體的微課,并在人郵學(xué)院(www.rymooc.com)平臺上提供了慕課。此外本書還提供了配套資源包,其中提供了本書所有實例、上機指導(dǎo)、綜合案例和課程設(shè)計的源代碼,制作精良的電子課件PPT,自測試卷等內(nèi)容。其中,源代碼全部經(jīng)過精心測試,能夠在Windows 7、Windows 8、Windows 10系統(tǒng)下編譯和運行。資源包也可在人郵學(xué)院下載。
30小時慕課教學(xué)視頻同步講解,讓學(xué)習(xí)更高效快捷
80個精彩課堂案例,12個課堂實驗,1個綜合案例,Oracle學(xué)習(xí)從入門到精通 66道習(xí)題,300道自測題,5套自測試卷,鞏固所學(xué)知識 提供免費教學(xué)資源,包括精品教學(xué)PPT、案例源代碼、自測題庫、拓展綜合案例
明日科技,程序設(shè)計類暢銷書作者,其主要作品“視頻大講堂”系列,每個品種都在其同品種的圖書中銷售名列前茅。累計銷售數(shù)十萬冊。其中《Oracle從入門到精通》長期占據(jù)Oracle零售圖書排行榜首位,年銷量數(shù)萬冊。
第1章 數(shù)據(jù)庫的基本概念與Oracle環(huán)境 1
1.1 數(shù)據(jù)庫基本概念 2 1.1.1 數(shù)據(jù)庫與數(shù)據(jù)庫管理系統(tǒng) 2 1.1.2 數(shù)據(jù)模型 2 1.1.3 關(guān)系型數(shù)據(jù)庫語言 2 1.2 Oracle數(shù)據(jù)庫環(huán)境 3 1.2.1 Oracle數(shù)據(jù)庫簡介 3 1.2.2 Oracle 11g的安裝 3 1.2.3 Oracle 11g的卸載 9 1.3 Oracle的管理工具 11 1.3.1 企業(yè)管理器 11 1.3.2 SQL*Plus工具 12 實例:在SQL *Plus中查詢志愿表的所有信息 1.3.3 SQL Developer工具 14 實例:通過SQL Developer工具查詢員工信息表 小結(jié) 18 上機指導(dǎo) 18 習(xí)題 20 第2章 數(shù)據(jù)庫創(chuàng)建 21 2.1 Oracle數(shù)據(jù)庫基本概念 22 2.1.1 邏輯存儲結(jié)構(gòu) 22 2.1.2 物理存儲結(jié)構(gòu) 25 2.1.3 實例 26 2.2 界面方式創(chuàng)建數(shù)據(jù)庫 31 2.2.1 數(shù)據(jù)庫的創(chuàng)建與刪除 32 實例:使用DBCA創(chuàng)建員工信息管理數(shù)據(jù)庫MR 實例:使用DBCA刪除員工信息管理數(shù)據(jù)庫MR 2.2.2 數(shù)據(jù)庫的修改 35 實例:將MR數(shù)據(jù)庫的users01.dbf的最大文件大小改為無限制 實例:在MR數(shù)據(jù)庫增加數(shù)據(jù)文件users02.dbf,其屬性均取系統(tǒng)默認值 2.3 命令方式創(chuàng)建數(shù)據(jù)庫 39 2.3.1 創(chuàng)建數(shù)據(jù)庫 40 實例:創(chuàng)建數(shù)據(jù)庫mydb的初始化參數(shù)文件 實例:使用命令創(chuàng)建數(shù)據(jù)庫mydb 2.3.2 修改數(shù)據(jù)庫 46 2.3.3 刪除數(shù)據(jù)庫 47 實例:刪除數(shù)據(jù)庫mydb 小結(jié) 48 上機指導(dǎo) 48 習(xí)題 49 第3章 表與表數(shù)據(jù)操作 50 3.1 表結(jié)構(gòu)和數(shù)據(jù)類型 51 3.1.1 表和表結(jié)構(gòu) 51 3.1.2 數(shù)據(jù)類型 51 3.1.3 表結(jié)構(gòu)設(shè)計 53 3.2 創(chuàng)建和管理表空間 54 3.2.1 界面方式創(chuàng)建表空間 54 實例:使用OEM創(chuàng)建永久性表空間MYMR 3.2.2 命令方式創(chuàng)建表空間 56 實例:創(chuàng)建表空間 實例:創(chuàng)建表空間,擴展大小為自動管理,段空間管理方式為手工 實例:創(chuàng)建表空間,擴展大小為自動管理,段空間管理方式為自動 3.3 界面方式操作表 60 3.3.1 OEM方式操作表 60 實例:使用OEM創(chuàng)建表 實例:表XSB中添加一個“獎學(xué)金等級”列 實例:刪除表 3.3.2 使用SQL Developer操作表 64 實例:使用SQL Developer創(chuàng)建表 實例:刪除KCB表 3.4 命令方式操作表 66 3.4.1 創(chuàng)建表 66 實例:使用CREATE TABLE命令創(chuàng)建表XSB 實例:向表XSB中增加若干條測試數(shù)據(jù) 3.4.2 修改表 68 實例:向XSB表中增加3個字段 實例:將XSB表BZ字段的長度改為20 實例:刪除XSB表中的PHOTO和ADDR字段 3.4.3 刪除表 71 實例:刪除STUD表 3.5 操作表數(shù)據(jù) 71 3.5.1 插入數(shù)據(jù) 71 實例:在dept表中,使用INSERT語句添加一條記錄 實例:在HR模式下,使用desc命令查看jobs表的結(jié)構(gòu)和列的定義順序,然后使用insert語句插入一條記錄 實例:在HR模式下,創(chuàng)建一個與job表結(jié)構(gòu)類似表jobs_temp,然后將jobs表中最高工資額(max_salary)大于10000的記錄插入到新表jobs_temp中 3.5.2 修改記錄 73 實例:在SCOTT模式下,把emp表中雇員名為SCOTT的工資調(diào)整為2460 實例:把emp表中職務(wù)是銷售員(SALESMAN)的工資上調(diào)20% 3.5.3 刪除記錄 74 實例:在HR模式下,刪除jobs表中職務(wù)編號(job_id)是“PRO”的記錄 實例:刪除emp表中所有數(shù)據(jù) 實例:使用truncate語句清除自定義表jobs_temp中的所有記錄 小結(jié) 76 上機指導(dǎo) 76 習(xí)題 77 第4章 數(shù)據(jù)庫的查詢和視圖 78 4.1 選擇、投影和連接 79 4.1.1 選擇 79 實例:在學(xué)生情況表中找到學(xué)生表中性別為女且平均成績在80分以上的行形成一個新表 4.1.2 投影 79 實例:對“學(xué)號”和“平均成績”投影 4.1.3 連接 79 實例:連接A表和B表 4.2 數(shù)據(jù)庫的查詢 80 4.2.1 選擇列 81 實例:在SCOTT模式下,在SELECT語句中使用星號(*)來檢索dept表中所有的數(shù)據(jù) 實例:在SCOTT模式下,在from子句中指定兩個數(shù)據(jù)表 實例:在SCOTT模式下,檢索emp表中指定的列 實例:在SCOTT模式下,檢索emp表的指定列,并使用as關(guān)鍵字為這些列指定中文的別名 實例:檢索emp表的sal列,把其值調(diào)整為原來的1.1倍 實例:在SCOTT模式下消除結(jié)果集中重復(fù)行 4.2.2 選擇行 84 實例:查詢emp表中工資(sal)大于1500的數(shù)據(jù)記錄 實例:查詢emp表中員工姓名中以S為開頭的員工信息 實例:在emp表中,使用IN關(guān)鍵字查詢員工信息 實例:在emp表中,使用NOT IN關(guān)鍵字查詢員工信息 實例:在emp表中,使用“BETWEEN... AND”關(guān)鍵字查詢員工信息 實例:查詢emp表中沒有獎金的員工信息 實例:在emp表中,查詢出既不是最高工資,也不是最低工資的員工信息 實例:在emp表中,查詢不是銷售部門(SALES)的員工信息 實例:在emp表中,查詢工資大于部門編號為10的任意一個員工工資即可的其他部門的員工信息 實例:在emp表中,查詢工資大于部門編號為30的所有員工工資的員工信息 實例:在emp表中,使用“關(guān)聯(lián)子查詢”檢索工資大于同職位的平均工資的員工信息 4.2.3 連接 89 實例:通過deptno列來關(guān)聯(lián)emp表和dept表 實例:通過deptno字段來內(nèi)連接emp表和dept表 實例:使用insert語句插入新記錄,然后實現(xiàn)emp表和dept表之間通過deptno列進行左外連接 實例:實現(xiàn)emp表和dept表之間通過deptno列進行右外連接 實例:實現(xiàn)emp表和dept表之間通過deptno列進行完全外連接 實例:實現(xiàn)emp表與dept表的自然連接 實例:查詢所有領(lǐng)導(dǎo)者所管理的下屬員工信息 實例:通過交叉連接dept表和emp表 4.2.4 統(tǒng)計 94 實例:使用COUNT函數(shù)計算員工總數(shù),使用AVG函數(shù)計算平均工資 實例:使用GROUP BY子句對工資記錄進行分組,并計算平均工資(AVG)、所有工資的總和(SUM)、以及最高工資(MAX)和各組的行數(shù) 實例:計算每個部門的平均工資,再過濾出平均工資大于2000元的信息 4.2.5 排序 96 實例:檢索emp表中所有的數(shù)據(jù),并按照部門編號(deptno)、員工編號(empno)排序 4.3 數(shù)據(jù)庫視圖 97 4.3.1 視圖的概念 97 4.3.2 創(chuàng)建視圖 98 實例:創(chuàng)建一個查詢部門編號為20的視圖 實例:創(chuàng)建一視圖,要求能夠查詢每個部門的工資情況 4.3.3 查詢視圖 99 實例:通過select語句查詢視圖emp_view 4.3.4 更新視圖 100 實例:向視圖emp_myview中增加一條新紀錄 實例:將emp_view_complex視圖中員工編號是7566的員工的工資改為3000元 4.3.5 修改視圖的定義 101 實例:修改視圖emp_view_union,使該視圖實現(xiàn)查詢部門編號為30的功能 4.3.6 刪除視圖 102 實例:刪除視圖emp_view 小結(jié) 102 上機指導(dǎo) 102 習(xí)題 103 第5章 索引與數(shù)據(jù)完整性 105 5.1 索引 106 5.1.1 索引的分類 106 5.1.2 建立索引的注意事項 106 5.1.3 創(chuàng)建索引 107 實例:為emp表的DEPTNO列創(chuàng)建索引 實例:在employees的salary列創(chuàng)建位圖索引 5.1.4 維護索引 109 實例:重命名索引XSB_NAME_INDEX 5.1.5 刪除索引 109 實例:刪除XSB表中的索引XSB_INDEX 5.2 數(shù)據(jù)的完整性和約束性 110 5.2.1 非空約束 110 實例:創(chuàng)建Books表,要求BookNo(圖書編號),ISBN和PublisherNo(出版社編號)不能為空值 5.2.2 主鍵約束 111 實例:創(chuàng)建表Books_1,并為該表定義行級主鍵約束BOOK_PK 實例:使用ALTER TABLE...ADD語句為Books表添加主鍵約束 實例:創(chuàng)建Books_2表時,在BookNo列上定義了一個由系統(tǒng)自動分配名稱的主鍵約束 5.2.3 唯一性約束 113 實例:創(chuàng)建一個會員表Members,并要求為該表的QQ列定義唯一性約束 5.2.4 外鍵約束 114 實例:創(chuàng)建表EMPLOYEES_TEMP,并添加外鍵約束 5.2.5 禁用約束 116 實例:創(chuàng)建一個學(xué)生信息表,并為年齡列定義一個disable狀態(tài)的Check約束 5.2.6 激活約束 117 實例:激活一個被禁用的約束 5.2.7 刪除約束 117 實例:刪除Student表中所創(chuàng)建的CHECK約束Age_CK 小結(jié) 118 上機指導(dǎo) 118 習(xí)題 119 第6章 PL/SQL語言介紹 120 6.1 PL/SQL概述 121 6.1.1 PL/SQL的特點 121 6.1.2 PL/SQL的開發(fā)和運行環(huán)境 121 6.2 PL/SQL字符集 121 6.2.1 合法字符 121 6.2.2 運算符 122 實例:求員工的在職時間 實例:查詢員工工資在2000到2500的員工信息 實例:查詢員工工資不在2000到2500的員工信息 6.2.3 其他符號 122 6.3 PL/SQL變量、常量和數(shù)據(jù)類型 123 6.3.1 定義變量和常量 123 實例:定義一個用于存儲國家名稱的可變字符串變量 實例:定義一個常量con_day,用來存儲一年的天數(shù) 6.3.2 基本數(shù)據(jù)類型 124 6.3.3 特殊數(shù)據(jù)類型 125 實例:使用%type類型的變量輸出emp表中編號為7369的員工名稱和職務(wù)信息 實例:聲明一個記錄類型emp_type,然后使用該類型的變量存儲emp表中的一條記錄信息,并輸出這條記錄信息 實例:聲明一個%ROWTYPE類型的變量rowVar_emp,然后使用該變量存儲emp表中的一行數(shù)據(jù) 6.4 PL/SQL基本程序結(jié)構(gòu)和語句 128 6.4.1 PL/SQL程序塊 128 實例:定義一個PL/SQL代碼塊,計算兩個整數(shù)的和與這個兩個整數(shù)的差的商 6.4.2 選擇語句 129 實例:比較兩個字符串的長度 實例:通過if...else語句實現(xiàn)只有年齡大于等于56歲,才可以申請退休,否則程序會提示不可以申請退休 實例:指定一個月份數(shù)值,然后使用if... then...elsif語句判斷它所屬的季節(jié) 6.4.3 循環(huán)結(jié)構(gòu) 133 實例:使用loop語句求得前100個自然數(shù)的和 實例:使用while語句求前100個自然數(shù)的和 實例:使用for語句求得前100個自然數(shù)中偶數(shù)之和 6.4.4 選擇和跳轉(zhuǎn)語句 135 實例:判斷季度所包含的月份 6.4.5 異常 137 實例:使用SELECT INTO語句檢索emp表中部門編號為10的雇員記錄信息,然后使用“too_many_rows”預(yù)定義異常捕獲錯誤信息并輸出 實例:定義錯誤編號為“-00001”的異常變量,然后向dept表中插入一條能夠“違反唯一約束條件”的記錄,最后在exception代碼體中輸出異常提示信息 實例:自定義一個異常變量,在向dept表中插入數(shù)據(jù)時,若判斷l(xiāng)oc字段的值為null,則使用raise語句引發(fā)異常,并將程序的執(zhí)行流程轉(zhuǎn)入到EXCEPTION部分進行處理 6.4.6 空操作和空值 142 6.5 系統(tǒng)內(nèi)置函數(shù) 142 6.5.1 字符類函數(shù) 142 實例:分別求得字符“Z、H、D和空格”的ASCII值 實例:使用concat函數(shù)連接“Hello”和“World”兩個字符串 實例:使用initcap函數(shù)轉(zhuǎn)換字符串“oh my god!”的輸出 實例:在字符串“oracle 11g”中,從第3個字符開始查詢字符串“1”第2次出現(xiàn)的位置 實例:在SCOTT模式下,通過使用length函數(shù)返回雇員名稱長度大于5的雇員信息及所在部門信息 實例:在SCOTT模式下,在emp表中檢索雇員名稱以字母“j”開頭的員工信息,并將ename字段的值轉(zhuǎn)換為小寫 實例:使用LTRIM、RTRIM和TRIM函數(shù)分別去掉字符串“####East####”、“East”和“####East###”中左側(cè)“#”、右側(cè)空格和左右兩側(cè)的“#” 實例:使用REPLACE函數(shù)把字符串“Bad Luck Bad Gril”中的“Bad”字符串用“Good”替換掉 實例:使用SUBSTR函數(shù)在字符串“'MessageBox'”中從第8個位置截取長度為3的子字符串 6.5.2 數(shù)字類函數(shù) 145 實例:使用CEIL函數(shù)返回3個指定小數(shù)的整數(shù)值 實例:使用ROUND函數(shù)返回PI為兩位小數(shù)的值 實例:使用POWER函數(shù)計算2的3次方的值 6.5.3 日期和時間類函數(shù) 146 實例:使用SYSDATE函數(shù)返回當期系統(tǒng)的日期 實例:使用ADD_MONTHS函數(shù)在當前日期下加上6個月 6.5.4 轉(zhuǎn)換類函數(shù) 147 實例:使用TO_CHAR函數(shù)轉(zhuǎn)換系統(tǒng)日期為“YYYY-MM-DD”格式 實例:使用TO_NUMBER函數(shù)把16進制數(shù)“18f”轉(zhuǎn)轉(zhuǎn)為10進制數(shù) 6.5.5 聚合類函數(shù) 147 6.6 函數(shù) 148 6.6.1 函數(shù)的創(chuàng)建與調(diào)用 148 實例:定義一個函數(shù),用于計算emp表中指定某個部門的平均工資 實例:調(diào)用函數(shù)get_avg_pay,計算部門編號為10的雇員平均工資并輸出 6.6.2 函數(shù)的刪除 149 實例:使用drop function命令刪除get_avg_pay函數(shù) 6.7 游標 149 6.7.1 顯式游標 150 實例:聲明一個檢索emp表中雇員信息的游標,然后打開游標,并指定檢索職務(wù)是“MANAGER”的雇員信息,接著使用fetch... into語句和while循環(huán)讀取游標中的所有雇員信息,最后輸出讀取的雇員信息 6.7.2 隱式游標 153 實例:把emp表中銷售員的工作上調(diào)20%,再使用隱式游標sql的%rowcount屬性輸出上調(diào)工資的人數(shù) 6.7.3 使用游標變量 153 6.7.4 使用游標表達式 155 6.8 程序包的使用 155 6.8.1 程序包的規(guī)范 156 實例:創(chuàng)建一個程序包的“規(guī)范”,首先在該程序包中聲明一個可以獲取指定部門的平均工資的函數(shù),然后再聲明一個可以實現(xiàn)按照指定比例上調(diào)指定職務(wù)的工資的存儲過程 6.8.2 程序包的主體 157 實例:創(chuàng)建程序包pack_emp的主體,在該主體中實現(xiàn)對應(yīng)“規(guī)范”中聲明的函數(shù)和存儲過程 小結(jié) 158 上機指導(dǎo) 158 習(xí)題 159 第7章 存儲過程和觸發(fā)器 160 7.1 存儲過程 161 7.1.1 存儲過程的創(chuàng)建和執(zhí)行 161 實例:創(chuàng)建一個存儲過程,該存儲過程實現(xiàn)向dept表中插入一條記錄 實例:使用execute命令執(zhí)行pro_insertDept存儲過程 7.1.2 存儲過程的修改 162 7.1.3 存儲過程的刪除 163 實例:刪除存儲過程pro_insertDept 7.2 觸發(fā)器 163 7.2.1 利用SQL語句創(chuàng)建觸發(fā)器 163 實例:在SCOT模式下創(chuàng)建dept_log數(shù)據(jù)表,并在其中定義兩個字段,分別用來存儲操作種類信息和操作日期 實例:創(chuàng)建一個觸發(fā)器tri_dept,該觸發(fā)器在insert、update和delete事件下都可以被觸發(fā),并且操作的數(shù)據(jù)對象是dept表。然后要求在觸發(fā)器執(zhí)行時輸出對dept表所做的具體操作 實例:在system模式下,給scott用戶授予“create view”(創(chuàng)建視圖)權(quán)限,然后在soctt模式下創(chuàng)建一個檢索雇員信息的視圖 實例:創(chuàng)建一個關(guān)于view_emp_dept視圖的替換觸發(fā)器,在該觸發(fā)器的主體中實現(xiàn)向emp表和dept表中插入兩行相互關(guān)聯(lián)的數(shù)據(jù) 實例:創(chuàng)建一個用戶事件觸發(fā)器,記錄用戶SYSTEM所刪除的所有對象 7.2.2 利用界面方式創(chuàng)建觸發(fā)器 169 7.2.3 啟用和禁用觸發(fā)器 170 7.2.4 觸發(fā)器的刪除 171 7.3 事務(wù) 171 7.3.1 事務(wù)的概念 171 7.3.2 事務(wù)處理 172 實例:提交事務(wù) 實例:在emp數(shù)據(jù)表中,刪除員工編號是7902的記錄,然后事務(wù)回滾,恢復(fù)數(shù)據(jù) 實例:使用保存點(savepoint)來回滾 記錄 7.3.3 自治事務(wù) 178 7.4 鎖 178 7.4.1 鎖機制和死鎖 179 7.4.2 鎖的類型 179 7.4.3 表鎖和事務(wù)鎖 180 小結(jié) 181 上機指導(dǎo) 181 習(xí)題 182 第8章 高級數(shù)據(jù)類型 183 8.1 Oracle數(shù)據(jù)庫與大對象數(shù)據(jù) 184 8.1.1 大對象數(shù)據(jù)類型 184 8.1.2 Oracle數(shù)據(jù)庫中導(dǎo)入大對象數(shù)據(jù) 184 實例:向表中的BLOB列插入一個圖片文件,可以通過創(chuàng)建一個存儲過程來完成 8.2 Oracle數(shù)據(jù)庫與XML 187 8.2.1 XML概述 187 8.2.2 Oracle XML DB概述 189 8.2.3 Oracle數(shù)據(jù)庫中導(dǎo)入XML數(shù)據(jù) 190 實例:向表Xmltable中插入22201號學(xué)生的聯(lián)系方式 實例:將以下的XML數(shù)據(jù)保存為D盤DIR(MYDIR邏輯)下的22202.xml文件,并作為22202號學(xué)生的聯(lián)系方式插入Xmltable表中 8.2.4 XQuery的基本用法 192 實例:查詢Xmltable表中<郵政編碼>節(jié)點是否存在 實例:查詢是否存在“姓名”為張月的屬性 實例:讀取學(xué)號為22201的學(xué)生的電話 實例:返回學(xué)號為22201的學(xué)生的<地址>節(jié)點下的所有信息 實例:將學(xué)號為22202的學(xué)生的<生活直轄市>節(jié)點的值改為“浙江” 實例:使用FLWOR表達式在Oracle中執(zhí)行查詢 小結(jié) 196 上機指導(dǎo) 196 習(xí)題 197 第9章 系統(tǒng)安全管理 198 9.1 用戶 199 9.1.1 創(chuàng)建用戶 199 實例:創(chuàng)建一個mr用戶,口令為mrsoft,并設(shè)置默認的表空間為users,臨時表空間為temp的用戶 實例:創(chuàng)建一個east用戶,口令為mrsoft 實例:創(chuàng)建一個用戶名為df,口令為mrsoft,臨時表空間為temp,默認表空間為tbsp_1,并且該用戶使用tbsp_1表空間不受限制 9.1.2 管理用戶 201 實例:修改用戶east在表空間上的磁盤限額為20M 實例:修改用戶east的新口令為12345 實例:使用ALTER USER命令解除被鎖定的賬戶SH 實例:使用DROP USER語句刪除用戶df,并連同該用戶所擁有的對象一起刪除 9.2 權(quán)限管理 202 9.2.1 權(quán)限概述 202 9.2.2 系統(tǒng)權(quán)限管理 203 實例:為用戶east授予連接和開發(fā)系統(tǒng)權(quán)限 實例:在創(chuàng)建用戶dongfang和xifang后,首先system將創(chuàng)建session和創(chuàng)建table的權(quán)限授權(quán)給dongfang,然后dongfang再將這兩個權(quán)限傳遞給xifang,最后通過xifang這個用戶創(chuàng)建一個數(shù) 據(jù)表 實例:撤銷east用戶的resource系統(tǒng)權(quán)限 9.2.3 對象權(quán)限管理 205 實例:給用戶xifang授予select、insert、delete和update表scott.emp的權(quán)限 實例:從xifang用戶撤銷scott.emp表的update和delete權(quán)限 9.2.4 安全特性 205 9.3 角色管理 207 9.3.1 角色概述 207 9.3.2 創(chuàng)建用戶角色 208 實例:創(chuàng)建一個名為designer的角色,角色口令為123456 9.3.3 管理用戶角色 208 實例:首先取消designer角色的密碼,然后再重新給該角色設(shè)置一個密碼 實例:創(chuàng)建一個無需密碼驗證的角色queryer,然后設(shè)置該角色生效,接下來再設(shè)置帶有密碼的角色designer也生效 9.4 概要文件和數(shù)據(jù)字典視圖 209 9.4.1 使用概要文件管理密碼 209 實例:創(chuàng)建profile文件,要求設(shè)置連續(xù)失敗次數(shù)為5,超過該次數(shù)后,賬戶將被鎖定7天,然后使用alter user語句將profile文件分配給用戶dongfang 實例:創(chuàng)建一個profile文件,并設(shè)置用戶的密碼有效期為30天,密碼寬限期為3天,然后使用alter user語句將profile文件分配給用戶dongfang 9.4.2 使用概要文件管理資源 211 實例:首先使用show命令查看RESO-URCE_LIMIT參數(shù)的值,然后使用alter system命令修改該參數(shù)的值為true,從而激活資源限制 9.4.3 數(shù)據(jù)字典視圖 212 9.5 審計 214 9.5.1 審計啟用 214 9.5.2 登錄審計 216 9.5.3 操作審計 217 實例:使用戶AUTHOR的所有更新操作都要被審計 9.5.4 權(quán)限審計 218 實例:分別對mr和east用戶進行系統(tǒng)權(quán)限級別審計 小結(jié) 219 上機指導(dǎo) 219 習(xí)題 220 第10章 備份和恢復(fù) 221 10.1 備份和恢復(fù)概述 222 10.2 RMAN備份恢復(fù)工具 223 10.2.1 RMAN的好處 223 10.2.2 RMAN組件基礎(chǔ) 224 10.2.3 分配RMAN通道 225 10.2.4 RMAN的常用命令 227 實例:首先創(chuàng)建恢復(fù),然后使用RMAN工具連接到數(shù)據(jù)庫,最后注冊數(shù)據(jù)庫 10.3 使用RMAN工具實現(xiàn)數(shù)據(jù)備份 228 10.3.1 RMAN備份策略 228 10.3.2 使用RMAN備份數(shù)據(jù)庫文件和歸檔日志 229 實例:實現(xiàn)非一致性備份整個數(shù)據(jù)庫 實例:實現(xiàn)備份tbsp_1和ts_1表空間 實例:實現(xiàn)備份指定的數(shù)據(jù)文件 實例:實現(xiàn)備份指定的控制文件 實例:實現(xiàn)備份歸檔重做日志文件 10.3.3 增量備份 231 實例:對system、sysaux和users表空間進行了一次0級差異增量備份 實例:將對system表空間進行1級增量備份 實例:對表空間example進行2級累積增量備份 10.4 使用RMAN工具實現(xiàn)數(shù)據(jù)恢復(fù) 232 10.4.1 數(shù)據(jù)的完全恢復(fù) 232 實例:在NOARCHIVELOG模式下備份和恢復(fù)數(shù)據(jù)庫 實例:恢復(fù)ARCHIVELOG模式下的數(shù)據(jù)庫 10.4.2 數(shù)據(jù)的不完全恢復(fù) 234 實例:實現(xiàn)基于時間的不完全恢復(fù) 實例:假設(shè)某個用戶不小心刪除了scott.emp表中的所有記錄,DBA需要查看刪除數(shù)據(jù)的事務(wù)的SCN號,以執(zhí)行基于更改的不完全恢復(fù)恢復(fù)被用戶誤刪除的數(shù)據(jù) 10.5 數(shù)據(jù)泵 237 10.5.1 數(shù)據(jù)泵概述 237 10.5.2 數(shù)據(jù)泵的使用 238 實例:創(chuàng)建一個DIRECTORY對象,并為SCOTT用戶授予使用該的權(quán)限 實例:導(dǎo)出scott方案中的dept和emp表 實例:導(dǎo)出scott和hr方案中的所有對象 實例:導(dǎo)出表空間tbsp_1 實例:導(dǎo)出整個數(shù)據(jù)庫 實例:將表dept、emp導(dǎo)入SYSTEM方案 實例:將scott方案中的所有對象導(dǎo)入system方案 實例:將tbsp_1表空間中的所有對象都導(dǎo)入當前數(shù)據(jù)庫 實例:從personnel_manage.dmp文件中導(dǎo)入所有數(shù)據(jù)庫 實例:使用自由格式加載TXT文件 實例:通過SQL*Loader加載Excel文件中的數(shù)據(jù) 小結(jié) 244 上機指導(dǎo) 244 習(xí)題 246 第11章 閃回操作和Undo表空間 247 11.1 閃回操作 248 11.1.1 基本概念 248 11.1.2 閃回數(shù)據(jù)庫 248 實例:設(shè)置閃回數(shù)據(jù)庫環(huán)境 實例:數(shù)據(jù)庫閃回 11.1.3 閃回數(shù)據(jù)表 252 實例:創(chuàng)建一個表,然后刪除某些數(shù)據(jù),最后利用表閃回命令恢復(fù) 11.1.4 閃回丟棄 254 實例:數(shù)據(jù)準備、刪除表、查看回收站信息、恢復(fù)及查詢恢復(fù) 11.1.5 其他閃回技術(shù) 255 11.2 Undo表空間 257 11.2.1 自動Undo管理 257 11.2.2 Undo表空間的優(yōu)點 257 11.2.3 Undo表空間管理參數(shù) 257 11.2.4 創(chuàng)建和管理Undo表空間 258 實例:創(chuàng)建一個Undo表空間,并指定數(shù)據(jù)文件大小為3G 實例:向表空間undo_tbs_1中添加一個新的數(shù)據(jù)文件,指定該文件大小為2G 實例:把當前系統(tǒng)的默認Undo表空間切換到自定義撤銷表空間undo_tbs_1 實例:把當前歷程的Undo表空間從“undo_tbs_1”切換到“undotbs1”,然后再刪除“undo_tbs_1”表空間 小結(jié) 259 上機指導(dǎo) 259 習(xí)題 260 第12章 其他概念 261 12.1 數(shù)據(jù)庫鏈接 262 12.1.1 創(chuàng)建數(shù)據(jù)庫鏈接 262 實例:為數(shù)據(jù)庫創(chuàng)建一個名為MY_PLINK的公用鏈接 12.1.2 使用數(shù)據(jù)庫鏈接 263 實例:查詢遠程數(shù)據(jù)庫personnel_manage表tb_record中的所有員工檔案信息 實例:為personnel_manage遠程數(shù)據(jù)庫表tb_record創(chuàng)建一個同義詞 12.1.3 刪除數(shù)據(jù)庫鏈接 263 實例:刪除公用數(shù)據(jù)庫鏈接MY_PLINK 12.2 快照 264 實例:創(chuàng)建一個名為EM_LINK的私有數(shù)據(jù)庫鏈接 12.2.1 創(chuàng)建快照 264 實例:在本地服務(wù)器上創(chuàng)建快照 12.2.2 修改快照 268 實例:修改快照 12.2.3 刪除快照 269 12.3 序列 269 12.3.1 創(chuàng)建序列 269 實例:在SCOTT模式下,創(chuàng)建一個序列empno_seq 實例:在SCOTT模式下,使用序列empno_seq為emp表的新紀錄提供員工編號 12.3.2 管理序列 271 實例:在SCOTT模式下,修改序列empno_seq的最大值為100000,序列增量為200,緩存值為100 實例:使用drop sequence 語句刪除empno_seq序列 小結(jié) 271 上機指導(dǎo) 271 習(xí)題 272 第13章 綜合案例——企業(yè)人事 管理系統(tǒng) 273 13.1 需求分析 274 13.2 系統(tǒng)設(shè)計 274 13.2.1 系統(tǒng)目標 274 13.2.2 系統(tǒng)功能結(jié)構(gòu) 274 13.2.3 系統(tǒng)業(yè)務(wù)流程 274 13.2.4 系統(tǒng)預(yù)覽 275 13.2.5 系統(tǒng)編碼規(guī)范 278 13.3 系統(tǒng)開發(fā)及運行環(huán)境 278 13.4 數(shù)據(jù)庫設(shè)計 278 13.4.1 實體E-R圖設(shè)計 278 13.4.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計 280 13.5 系統(tǒng)文件夾組織結(jié)構(gòu) 281 13.6 公共模塊設(shè)計 281 13.6.1 編寫Hibernate配置文件 281 13.6.2 編寫Hibernate持久化類和映射文件 282 13.6.3 編寫通過Hibernate操作持久化對象的常用方法 283 13.6.4 創(chuàng)建用于特殊效果的部門樹對話框 284 13.6.5 創(chuàng)建通過部門樹選取員工的面板和對話框 286 13.7 Hibernate關(guān)聯(lián)關(guān)系的建立方法 287 13.7.1 建立一對一關(guān)聯(lián) 288 13.7.2 建立一對多關(guān)聯(lián) 289 13.8 主窗體設(shè)計 290 13.8.1 實現(xiàn)導(dǎo)航欄 290 13.8.2 實現(xiàn)工具欄 292 13.9 人事管理模塊設(shè)計 294 13.9.1 實現(xiàn)上傳員工照片功能 296 13.9.2 實現(xiàn)組件聯(lián)動功能 298 13.9.3 通過Java反射驗證數(shù)據(jù)是否為空 300 13.10 待遇管理模塊設(shè)計 301 13.10.1 實現(xiàn)建立一個新的賬套 301 13.10.2 實現(xiàn)為新建的賬套添加項目 302 13.10.3 實現(xiàn)修改項目的金額 303 13.10.4 實現(xiàn)統(tǒng)計報表 305 13.11 系統(tǒng)維護模塊設(shè)計 306 13.11.1 實現(xiàn)修改名稱功能 308 13.11.2 實現(xiàn)添加部門的功能 309 13.11.3 實現(xiàn)刪除現(xiàn)有部門的功能 311
小結(jié) 312
你還可能感興趣
我要評論
|