oracle database,又名oracle rdbms,或簡稱oracle。
是甲骨文公司的一款關聯式資料庫管理系統。它是在資料庫領域一直處於領先地位的產品。
可以說oracle資料庫系統是目前世界上流行的關聯式資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小微機環境。
它是一種高效率的、可靠性好的、適應高吞吐量的資料庫方案。
二、oracle的許可權管理
三、oracle的角色管理
四、資料庫的備份和恢復
五、資料庫物件管理
六、資料庫約束管理
七、資料庫序列管理
八、資料庫索引管理
九、資料庫檢視管理
十、資料庫同義詞
總結管理資料庫的使用者、許可權、角色時需要有管理員許可權,本章示例全部使用sys(超級管理員)登入。
sqlplus sys as sysdbaschema(方案):
資料庫物件的集合
oracle的主要資料庫物件有:表、索引、檢視、同義詞、儲存過程、函式、觸發器等。
使用者sys要訪問scott方案的emp表,應該使用以下語句:• select * from scott.emp概述:
許可權(privilege):使用者執行某項操作的權力。
乙個使用者要在資料庫中執行某項操作,必須為該使用者授予執行這些操作所需的許可權。
新建立的使用者沒有任何許可權,就連連伺服器的許可權都沒有。
oracle資料庫中的許可權分為:
每個使用者都可以通過user_sys_privs表檢視所具有的系統許可權。
每個使用者都可以通過user_tab_privs_made表檢視自己向其他使用者開放了哪些物件許可權。角色(role):一組許可權的集合。可分配給使用者或其它角色。
oracle11g內建的常用角色:
使用者可以通過user_role_privs表查詢自己所擁有的角色。
該命令不能在sqlplus中執行exp命令工具用於匯出資料,三種使用模式
完全:exp system/orcl buffer=64000 file=c:\full.dmp full=y
如果要執行完全匯出,必須具有特殊的許可權
使用者模式:
(常用)exp scott/tiger buffer=64000 file=c:\scott.dmp owner=scott使用者scott的所有物件被輸出到檔案中。
表模式:
exp scott/tiger buffer=64000 file=c:\scott.dmp tables=(scott.dept,scott.emp)
使用者scott的表emp就被匯出
gmp命令工具用於匯入資料,三種使用模式
完全:imp system/orcl buffer=64000 file=c:\full.dmp full=y
使用者模式:(常用)
imp scott/tiger buffer=64000 file=c:\scott.dmp fromuser=scott touser=scott
使用者scott的所有物件被匯入到檔案中。必須指定fromuser、touser引數,這樣才能匯入資料。
表模式:
imp scott/tiger buffer=64000 file=c:\scott.dmp fromuser=scott touser=scotttables=(emp)
使用者scott的emp表被匯入。
建立語句:
createtable [方案名.]表名(列名列型別 [default 預設值] [列級約束型別], … [constaint 表級約束] );示例:
建立一學生表(student),字段如下:
sid 整數型別編號
name 字串姓名
birthday 日期時間型別生日
score 浮點數,2位小數成績
修改表結構:
示例:修改表結構
刪除表:把表中所有的行和表結構都刪除。
約束:對錶的列(字段)設定的內容限制。
分類:表級約束,列級約束
建立表級約束
createtable [方案名.
]表名(列名列型別 [
default 預設值]
[列級約束型別],.
..[constaint 表級約束型別]
);
使用單獨的sql語句新增約束
altertable表名 add [constraint 約束名] 約束型別(要約束的列名)
;altertable表名 add [constraint 約束名] foreign key (要新增外來鍵約束的列名) references 主表名(主表的列名)
;
約束名的建議:約束型別_表名_欄位名、fk_主表_從表_列名刪除約束
altertable表名drop constraint 約束名;
示例:
插入資料,測試各約束的使用。
序列(sequence)是一種用於生成唯一數字的資料庫物件,序列生成器會自動生成順序遞增的序列號。
create sequence 序列名
[increment by遞增量值]
[start with 開始值]
[maxvalue 最大值]
[minvalue 最小值]
[cycle | nocycle]
-- 達到最大值或最小值時是否迴圈
[cache 預生成數量 | noche]
;-- 預設快取20個
通過序列的偽列來引用序列值
currval:返回當前序列值。
僅用於檢視在檢視序列的當前值,必須先通過檢索序列的下乙個值對序列進行初始化示例:
獲取有關序列的資訊:
drop sequence 序列名;
另外oracle也提供了獲取uuid值的函式:
select sys_guid() from dual;索引是資料庫中提高查詢效能的最常用手段。
任何單個查詢要檢索的行少於或等於整個錶行數的10%時,索引就是非常有用
oracle資料庫會為定義了primary key和unique約束的列自動建立乙個對應的「b-樹」唯一索引。
在查詢語句中針對主鍵的查詢效率更高
檢視(view):乙個或多個基表上的預定義查詢。
使用檢視優點:
檢視可以間接對錶進行更新,檢視中資料的更新就是表資料的更新
建立檢視
create [or replace] view 檢視名選項:as查詢語句 [with check option] [with read only];
獲取檢視定義的相關資訊
刪除
drop view 檢視名;示例:
同義詞:資料庫物件的乙個別名,用來簡化對資料庫物件的訪問。
建立同義詞語法
create synonym 同義詞名 for 方案名.物件名;刪除同義詞
drop synonym 同義詞名;示例:
這樣就是可以直接使用 select * from c; 了
Oracle資料庫入門 二
oracle sql plus常用命令 一 sys使用者和system使用者 oracle安裝會自動的生成sys使用者和system使用者。1 sys使用者時超級使用者,具有最高許可權,具有sysdba角色,有create database的許可權,該使用者預設的密碼是change on insta...
Oracle資料庫入門 一
資料庫分類 一 資料庫分類 1 小型資料庫 access foxbase 2 中型資料庫 informix sql server mysql 3 大型資料庫 sybase db2 oracle。二 專案中如何合理地使用資料庫,可以依據如下三個方面入手 1 負載量有多大,即使用者數有多大 2 成本 3...
ORACLE資料庫操作基礎入門
oracle資料庫操作入門 1 資料庫工作環境基礎設定 在linux下用oracle使用者登陸作業系統,然後用sqlplus 以資料庫的超戶 登陸 資料庫 oracle home bin sqlplus as sysdba 建立表空間 sql create tablespace its datafi...