- 相關(guān)推薦
Oracle學(xué)習與開(kāi)發(fā)基本概念
甲骨文股份有限公司(Oracle)是全球大型數據庫軟件公司,總部位于美國加州紅木城的紅木岸。下面是小編收集的關(guān)于Oracle學(xué)習與開(kāi)發(fā)基本概念,希望大家認真閱讀!
第一章 關(guān)系型數據庫介紹
1. 安裝Oracle 10g的軟硬件要求
硬件要求:
物理內存:最小256M,建議512M以上
虛擬內存:大小為物理內存的兩倍
臨時(shí)磁盤(pán)空間:100M以上
視頻適配器:256種顏色
硬盤(pán)空間:1.5G以上
處理器:最小550MHz
軟件要求:
操作系統:Windows2000、WindowsXP、Windows2003
網(wǎng)絡(luò )協(xié)議:TCP/IP、命名管道
Wed瀏覽器:IE 6以上
2. 檢驗安裝是否成功
(1) 查看已安裝的產(chǎn)品:打開(kāi)安裝包,運行setup.exe.查看已安裝的產(chǎn)品。
(2) 查看程序組:打開(kāi)“開(kāi)始”菜單,查看是否注冊了Oracle。
(3) 查看服務(wù):在“管理工具”->“服務(wù)”中查看是否已經(jīng)有了Oracle服務(wù)。
(4) 查看注冊表
(5) 嘗試運行Oracle工具:比如SQL Plus.
3. Oracle數據庫的默認用戶(hù)
(1) SYS:該用戶(hù)被默認創(chuàng )建并授予DBA角色。是Oracle數據庫中權限最大的管理員。數據庫中所有的數據字典的基本表和視圖都存儲在sys方案中。這些基本表和視圖對于Oracle非常重要。Sys中的表只能有系統維護,不能被任何的用戶(hù)和數據庫管理員修改,而且用戶(hù)不能在sys方案中建表。
(2) SYSTEM:被默認創(chuàng )建并授予DBA角色,權限僅次于sys。用來(lái)創(chuàng )建和管理數據庫中可顯示管理信息的表和視圖,以及被Oracle數據庫應用和工具使用的各種數據庫對象。
(3) SYSMAN:該用戶(hù)是企業(yè)管理的超級管理員賬號,該賬號能創(chuàng )建和修改其他管理員賬號同時(shí)也能管理數據庫實(shí)例。
(4) DBSNMP:是Oracle中用于智能代理的用戶(hù),用來(lái)監控和管理數據庫的相關(guān)性能。如果停止該用戶(hù),則無(wú)法提取數據庫的信息。
4. Oracle的啟動(dòng)和關(guān)閉
啟動(dòng)和關(guān)閉數據庫需要用戶(hù)以Oracle的sysdba特權登陸。一般就是系統用戶(hù)以sysdba登陸。
(1) 使用startup命令啟動(dòng)數據庫
步驟:?jiǎn)?dòng)一個(gè)Oracle實(shí)例;由該實(shí)例安裝數據庫,只打開(kāi)控制文件;最后是打開(kāi)數據庫。
(2) 使用shutdown命令關(guān)閉數據庫
5. OEM(企業(yè)管理器)
簡(jiǎn)答題:
1. 簡(jiǎn)述Oracle中的幾個(gè)默認管理員用戶(hù)及其作用。
答:Oracle數據庫的默認用戶(hù)
(1)SYS:該用戶(hù)被默認創(chuàng )建并授予DBA角色。是Oracle數據庫中權限最大的管理員。數據庫中所有的數據字典的基本表和視圖都存儲在sys方案中。這些基本表和視圖對于Oracle非常重要。Sys中的表只能有系統維護,不能被任何的用戶(hù)和數據庫管理員修改,而且用戶(hù)不能在sys方案中建表。
(2)SYSTEM:被默認創(chuàng )建并授予DBA角色,權限僅次于sys。用來(lái)創(chuàng )建和管理數據庫中可顯示管理信息的表和視圖,以及被Oracle數據庫應用和工具使用的各種數據庫對象。
(3)SYSMAN:該用戶(hù)是企業(yè)管理的超級管理員賬號,該賬號能創(chuàng )建和修改其他管理員賬號同時(shí)也能管理數據庫實(shí)例。
(4)DBSNMP:是Oracle中用于智能代理的用戶(hù),用來(lái)監控和管理數據庫的相關(guān)性能。如果停止該用戶(hù),則無(wú)法提取數據庫的信息。
第二章 Oracle的體系結構
1. 數據庫包括4種類(lèi)型的文件:數據文件、日志文件、控制文件、初始化參數文件。(這是Oracle的物理存儲結構,是一系列的操作系統文件,是Oracle真正存儲數據的地方。)
2. 數據文件:
(1)數據文件是Oracle用來(lái)存儲各種數據的地方。一個(gè)數據庫有一個(gè)或多個(gè)數據庫文件,但一個(gè)數據文件只能屬于一個(gè)數據庫。
(2)數據文件和數據庫中的表沒(méi)有一一對應的關(guān)系。
(3)數據文件包括永久數據文件和臨時(shí)數據文件
(4)數據文件根據存儲的數據不同分為:系統數據文件、回滾數據文件、臨時(shí)數據文件、用戶(hù)數據文件、系統輔助數據文件、示例數據文件。
3. 日志文件:
(1) Oracle中日志文件記錄了用戶(hù)對數據庫的修改。對數據庫的查詢(xún)操作不產(chǎn)生日志。
(2) 日志文件又叫重做日志文件。
(3) 日志組是日志文件的邏輯組織單元。每個(gè)日志組中有一個(gè)或多個(gè)日志文件。一個(gè)數據庫中至少要有兩個(gè)日志組,一組寫(xiě)完后切換到另一組繼續寫(xiě)。同一個(gè)日志組中的日志文件具有相同的信息,是鏡像關(guān)系。
(4) 數據庫的兩種工作模式:歸檔日志模式、非歸檔日志模式。
(5) 歸檔模式下,日志信息被覆蓋前就已經(jīng)復制到歸檔日志文件中,日志信息即使被覆蓋,也能夠在歸檔日志文件找到。
(6) 非歸檔模式下,重新向某個(gè)日志組寫(xiě)入日志信息將會(huì )覆蓋原來(lái)的日志,并且不能再使用。
4. 控制文件:
(1) 控制文件記錄了數據庫的名稱(chēng),數據文件和日志文件的名稱(chēng)和位置、表空間等信息?刂莆募趧(chuàng )建數據庫時(shí)自動(dòng)創(chuàng )建。
(2) 打開(kāi)數據庫過(guò)程:Oracle首先從初始化參數文件中獲得控制文件的名稱(chēng)和位置,然后打開(kāi)控制文件,再從控制文件中讀取數據文件和日志文件的信息,最后打開(kāi)數據庫。
5. 參數文件:
(1) 在啟動(dòng)數據庫實(shí)例時(shí),第一個(gè)被訪(fǎng)問(wèn)的就是參數文件。
(2) 參數文件分為文本參數文件和服務(wù)器參數文件。
6.將邏輯存儲空間的大小依次分為表空間、段、盤(pán)區、數據塊。(Oracle對存儲空間的管理是在邏輯存儲結構上進(jìn)行的。)
7.一個(gè)數據庫從邏輯上劃分為多個(gè)表空間,一個(gè)表空間劃分為多個(gè)段、一個(gè)劃分為多個(gè)盤(pán)區、一個(gè)盤(pán)區劃分為多個(gè)數據塊。
8.盤(pán)區是最小的磁盤(pán)空間分配單位。
9.數據塊是Oracle最小的數據讀寫(xiě)單元。
10.表空間:數據庫中的所有數據都存儲在表空間中。數據庫中一個(gè)表空間至少包含一個(gè)或多個(gè)數據文件;一個(gè)數據文件只能在一個(gè)表空間中。
11. 段:盤(pán)區是按需分配的,一個(gè)段上的盤(pán)區在磁盤(pán)上不一定是連續的。(同一個(gè)段的不同
盤(pán)區可以分布在不同的數據文件中。)
12. 盤(pán)區:最小的磁盤(pán)空間分配單位。
13.數據塊:Oracle最小的邏輯存儲單元。Oracle從數據文件進(jìn)行存取操作時(shí)是以數據塊為單位進(jìn)行輸入輸出操作的。(注意:數據塊和操作系統中的塊不同。Oracle每次存取數據時(shí),是以數據塊的整數倍訪(fǎng)問(wèn)數據,而不是以操作系統中塊為單位。
1. Oracle完成網(wǎng)絡(luò )連接要使用三個(gè)文件:listener.ora(服務(wù)器端配置) tnsnames.ora(客戶(hù)端配置) sqlnet.ora(客戶(hù)端配置)
2. sqlnet.ora文件:指定數據庫連接賬號的驗證方式以及連接字符串的解析方式。該文件決定怎樣查找連接中出現的連接字符串的定義。
3. tnsnames.ora文件:定義客戶(hù)端連接遠程服務(wù)器時(shí)的主機字符串。
4. listener.ora文件:Oracle監聽(tīng)服務(wù)的配置文件。當客戶(hù)端向服務(wù)器提交連接服務(wù)時(shí),監聽(tīng)服務(wù)對連接賬號進(jìn)行有效性驗證,通過(guò)后將用戶(hù)進(jìn)程轉交服務(wù)進(jìn)程處理。
簡(jiǎn)答題
1. 簡(jiǎn)述數據庫的物理存儲結構,并說(shuō)出每種物理文件的作用是什么?
答: Oracle的物理存儲結構是從物理組成的角度分析一個(gè)數據庫在存儲介質(zhì)上的實(shí)際構成,是由操作系統組織和管理的,是Oracle的外部存儲結構。由于操作系統組織和管理數據的基本單位是文件,因此Oracle的物理存儲結構是由多個(gè)操作系統文件組成的。
其他的參考上面1 2 3 4 5
2.簡(jiǎn)述數據庫的邏輯存儲結構,并說(shuō)出表空間和數據文件之間的關(guān)系是什么?
答: Oracle的邏輯存儲結構是在邏輯上定義了一組存儲單元,以逐層細分的思想將數據庫對象占用的存儲空間劃分為表空間、段、盤(pán)區和數據塊。表空間是最大的邏輯存儲單元,一個(gè)數據庫從邏輯上劃分為多個(gè)表空間;一個(gè)表空間劃分為多個(gè)段;一個(gè)段又劃分為多個(gè)盤(pán)區,盤(pán)區是最小的磁盤(pán)空間分配單元;一個(gè)盤(pán)區劃分為多個(gè)數據塊,數據塊是Oracle最小的數據讀寫(xiě)單元。因此,Oracle對存儲空間的管理和分配是在邏輯存儲結構上進(jìn)行的。
數據庫中的一個(gè)表空間至少包含一個(gè)或多個(gè)數據文件,而一個(gè)數據文件只能屬于一個(gè)表空間。
3.客戶(hù)端和服務(wù)器端常用的配置文件是什么?它們的作用分別是什么?
答:listener.ora(服務(wù)器端配置) tnsnames.ora(客戶(hù)端配置) sqlnet.ora(客戶(hù)端配置)
sqlnet.ora文件:指定數據庫連接賬號的驗證方式以及連接字符串的解析方式。該文件決定怎樣查找連接中出現的連接字符串的定義。
tnsnames.ora文件:定義客戶(hù)端連接遠程服務(wù)器時(shí)的主機字符串。
listener.ora文件:Oracle監聽(tīng)服務(wù)的配置文件。當客戶(hù)端向服務(wù)器提交連接服務(wù)時(shí),監聽(tīng)服務(wù)對連接賬號進(jìn)行有效性驗證,通過(guò)后將用戶(hù)進(jìn)程轉交服務(wù)進(jìn)程處理。
第三章 用戶(hù)方案的創(chuàng )建和管理
1. 方案與用戶(hù)的關(guān)系:一個(gè)方案只能被一個(gè)數據庫用戶(hù)所有,并且方案的名稱(chēng)與用戶(hù)的名稱(chēng)相同,當創(chuàng )建新用戶(hù)時(shí),系統自動(dòng)創(chuàng )建該用戶(hù)的方案。Oracle每一個(gè)用戶(hù)都有一個(gè)唯一的方案。該用戶(hù)創(chuàng )建的對象默認保存在自己的方案中。如果用戶(hù)有足夠的權限,也可以將自己的對象保存在別人的方案中。
2. Oracle中的方案是對數據庫的局部邏輯描述。
3. 方案中的對象是數據庫所有對象的一個(gè)子集。
4. 同一個(gè)方案對象在物理上可能存在于同一個(gè)表空間中的不同數據文件中。
簡(jiǎn)答題:
1. 簡(jiǎn)要介紹方案與用戶(hù)之間的關(guān)系?
答:一個(gè)方案只能被一個(gè)數據庫用戶(hù)所有,并且方案的名稱(chēng)與用戶(hù)的名稱(chēng)相同,當創(chuàng )建新用戶(hù)時(shí),系統自動(dòng)創(chuàng )建該用戶(hù)的方案。Oracle每一個(gè)用戶(hù)都有一個(gè)唯一的方案。該用戶(hù)創(chuàng )建的對象默認保存在自己的方案中。如果用戶(hù)有足夠的權限,也可以將自己的對象保存在別人的方案中。
第七章 PL/SQL編程基礎
1. 一個(gè)PL/SQL程序塊中可以嵌套多層,沒(méi)有限制。
2. PL/SQL程序塊三部分組成:定義部分、執行部分、異常處理部分。
3. 定義部分:declare關(guān)鍵字
4. 執行部分:關(guān)鍵字begin開(kāi)始,關(guān)鍵字end結束
5. 異常處理:關(guān)鍵字exception
6. 定義部分和異常處理部分是可選的,執行部分是必須的。
7. PL/SQL的標識符規則:
(1) 必須以字母開(kāi)頭,不能超過(guò)30個(gè)字符
(2) 標識符中不能包含減號“-”和空格
(3) Oracle不區分大小寫(xiě)
(4) 不能使SQL保留字
8. PL/SQL的數據類(lèi)型:標量數據類(lèi)型(基本數據類(lèi)型)、大對象數據類(lèi)型、屬性類(lèi)型、引用類(lèi)型
9. 標量數據類(lèi)型包括數值類(lèi)型、字符類(lèi)型、布爾類(lèi)型、日期時(shí)間類(lèi)型
10. 數值類(lèi)型中有number binary_integer pls_integer
11. number(p,s) 精度38位,p表示總位數,s是小數點(diǎn)后的位數
12. binary_integer 、 pls_integer 是PL/SQL專(zhuān)用數據類(lèi)型,不能在定義表結構時(shí)使用。
13. 布爾類(lèi)型(boolean):值有ture、false、null。這是PL/SQL中的數據類(lèi)型,不能向數據庫中插入布爾類(lèi)型的值,只能對布爾類(lèi)型的變量進(jìn)行邏輯操作。
14. 日期時(shí)間類(lèi)型: date 、 timestamp
15. 大對象數據類(lèi)型(LOB):存儲非結構化數據,例如文本、圖形圖像、視頻和聲音等。
16. 屬性類(lèi)型:%type %rowtype
17. 引用類(lèi)型:ref_cursor(動(dòng)態(tài)游標)和ref操作符。
18. 學(xué)會(huì )使用%type %rowtype.
19. 游標是指向查詢(xún)結果集的指針。有顯式游標和隱式游標。
20. 在PL/SQL中,系統為所有的select語(yǔ)句和DML語(yǔ)句自動(dòng)創(chuàng )建隱式游標。
21. 游標常用屬性:
(1)%isopen 如果游標已經(jīng)打開(kāi),則返回true;若沒(méi)有打開(kāi),則返回false。
(2)%found 如果提取到數據,返回true,若未提取到數據,返回false。
(3)%notfound 和%isopen相反。
(4)%rowcount 返回游標從結果記錄集中得到的記錄總數。
22. 異常分為兩種:系統異常和用戶(hù)自定義異常。
23. 系統異常分為:預定義異常和非預定義異常。
24. 系統預定義異常:由系統根據發(fā)生的錯誤已經(jīng)定義好的異常,有錯誤編號和異常名稱(chēng)用來(lái)處理常見(jiàn)的Oracle錯誤,例如:
(1) case_not_found:在case語(yǔ)句條件中沒(méi)有滿(mǎn)足條件的分支。
(2) dup_val_on_index:在唯一索引的列上插入了重復值。
(3) too_many_rows:返回的記錄超過(guò)一行。
(4) no_data_found:沒(méi)有返回行。
25.系統的非預定義異常指Oracle已經(jīng)為它定義了錯誤編號,但是沒(méi)有定義異常的名字。
注意:SQL語(yǔ)句!!!
【Oracle學(xué)習與開(kāi)發(fā)基本概念】相關(guān)文章:
Oracle學(xué)習方法08-12
Oracle學(xué)習的技巧心得07-18
oracle數據庫開(kāi)發(fā)規范具體條件10-23
GMAT基本概念學(xué)習技巧11-05
學(xué)習Oracle數據庫技巧攻略08-16
Oracle認證:ORACLE綁定變量BINDPEEKING08-25