oracle
也是一種資料庫管理系統
儲存結構分類:邏輯儲存結構,物理儲存結構
邏輯儲存結構:
資料塊:資料塊是oracle邏輯儲存結構的最小邏輯結構,乙個資料塊對應乙個或多個物理塊,
資料塊的結構包括塊頭和儲存區的兩個部分
塊頭包括:資料塊標題,表目錄,行目錄
儲存區:自由空間,行資料
資料區:資料區是由連續的資料塊結合而成的,資料區是oracle儲存分配的最小單位
段:
資料段:儲存表中所有的資料
索引段:儲存表上最佳查詢的所有索引資料
臨時段:儲存表排序操作期間建立的臨時表的資料
回滾段:儲存修改之前的位置和值
表空間:表空間是資料庫的最大邏輯劃分區域,乙個表空間由乙個或多個資料檔案組成,乙個資料檔案只屬於乙個表空間,表空間的大小是它所對應的資料檔案大小的總和
預設建立的表空間有:
系統表空間(system tablespace)輔助表空間(sysaux tablespace)
撤銷表空間(undo tablespace) 使用者表空間(users tablespace)
物理儲存結構:
物理儲存結構包含三種資料檔案:控制檔案,資料檔案,日誌檔案
邏輯儲存結構與物理儲存結構的互動方式有兩種:1.表空間與資料檔案2.塊與os塊
資料檔案:系統資料檔案(system01.dbf和sysaux01.dbf)回滾資料檔案(undotbs01.dbf)
使用者資料檔案(users01.dbf、tbsp_1.dbf)臨時資料檔案(temp02.dbf)
控制檔案:是資料庫中最小的檔案但也是非常的重要的檔案
日誌檔案:包括重做資料檔案(記錄所有的資料變化,提供恢復機制)和歸檔日誌檔案等等
我自己安裝的oracle 版本是oracle11g
oracle11g提供了 sqlplus sqldeveloper oracle企業管理器 資料庫配置助手(dbca)
目前先使用sql*plus工具:在oracle 11g資料庫系統中,使用者對資料庫的操作主要是通過sql *plus來完成的。sql *plus作為oracle的客戶端工具,既可以建立位於資料庫伺服器上的資料連線,也可以建立位於網路中的資料連線。
sql*plus工具的特點為:
可以用它執行sql查詢和pl/sql**塊並接受結果資訊;
可以發布dba命令並自動工作;
可以啟動和關閉資料庫;
一種建立資料庫管理報告的便利方法;
oracle的常用sql語句
列別名:列別名可以使檢索出來的表更加美觀易懂
例如:1.檢索emp表員工的編號、姓名和年基本工資、日基本工資資訊,並為查詢結果設定列別名
select empno as "員工編號",ename as "員工名稱",sal*12 as "年基本工資",sal/30 as "日基本工資" from emp;
2.檢索emp表的指定列(empno、ename、job),不使用任何關鍵字而直接為這些列指定中文的別名
select empno "員工編號",ename "員工名稱",job "職務" from emp;
如果別名中包含了特殊字元,或想讓別名原樣顯示,就要使用雙引號把別名括起來
去重:使查詢結果中排出重複行可以使用關鍵字distinct
distinct的作用是消除重複內容,但是所謂的消除重複的內容,是指一條完整的資料全部是重複的,如果多行記錄只有一列重複而其他列不重複,那麼也是無法消除的。
例如:在scott模式下,顯示emp表中的job(職務)列,要求顯示的「職務」記錄不重複
select distinct job from emp;
也可以使用分組group by 來達到去重的目的
select job from emp group by job;
查詢:
查詢單個表中的所有資料
select * from scott.emp;
查詢多個表中的所有資料(將表用逗號隔開就行了)
select * from scott.emp,dept;
查詢指定(/多個)資料
select job,sal,ename,empno from emp;
偽列:是一種資料型別,唯一標識一條記錄,物理位置的一條id,它之所以被稱為偽列就是因為他不是正式存在的,偽列可以從表中查詢,但是不可以插入,更新或者刪除。
偽列的用途:1.能以最快的方式訪問表中的一行
2.能顯示表的行是如何儲存的
3.作為表中的唯一標識
常用的偽列:rowid和rownum
rownum:對於乙個查詢返回的每一行,rownum偽列返回乙個數值代表的次序。返回第一行的rownum值為1,第二行的rownum值為2,以此類推。通過使用rownum偽列,使用者可以限制查詢返回的行數
例如:1.查詢emp表的rowid列---select rowid from emp;
2.從emp表中查詢前5條資料---select * from emp where rownum < 6;
模式匹配: like以及兩個萬用字元「%」表示0或多個字元,「_」表示乙個且只有乙個字元
例如:查詢表中名字中含有張的人名字
select * from biaoge where ename like "%張%";
空值:oracle中的空值(null)是不存在的值,而不是空字串,
EnterpriseDB與Oracle的相容性
使用 oracle 資料庫的企業一般都會對開源資料庫感興趣,主要有以下三方面的原因 首先,通過部署開源資料庫,這些企業可以顯著降低資料庫的總擁有成本 tco 有時降幅甚至可高達90 其次,它們通常可以從其他廠商 非oracle 處獲得更大的許可靈活性以及業務便利 最後,這些企業會發現其他一些廠商更渴...
ORACLE例項與ORACLE資料庫的區別
剛接觸oracle的人肯定會對例項和資料庫感到困惑,例項到底代表些什麼?為什麼會有這個概念的出現?oracle例項 程序 程序所使用的記憶體 sga 例項是乙個臨時性的東西,你也可以認為它代表了資料庫某一時刻的狀態!資料庫 重做檔案 控制檔案 資料檔案 臨時檔案 資料庫是永久的,是乙個檔案的集合。o...
Oracle的安裝與刪除
系統環境 1 作業系統 windows 2000 2 資料庫 oracle 8i r2 8.1.6 for nt 企業版 oracle 8i r2 8.1.6 for nt 企業版預設安裝完畢後會在所在碟符建立以下三個目錄 admin 記錄oracle例項的配置 執行日誌等檔案,每個例項乙個目錄 o...