第三章 oracle 10g 空間管理


(一)

1.表空間:實質是一種組織數據文件的途徑,表空間包含表,字段,索引等,一個物理文件對應一個表空            間.

2.表空間分類:

   (1)目錄表空間

   (2)常規表空間

   (3)系統表空間

   (4)用戶臨時表空間

   (5)undo表空間

3.創建表空間rb_segs:

   create tablespace rb_segs

   datafile '存儲路徑'

   size 50M

   autoextend on  --自動增長

   maxsize 1024M  --最大增長值

   Uniform size 64k; --區間大小

   

4.創建臨時表空間temp;

create temporary tablespace temp

tempfile '存儲路徑'

size 50M;


5.修改表空間

(1)修改表空間爲默認表空間

   alter user 用戶名 default tablespace 表空間名;

(2)給表空間增加10MB;

   alter tablespace 表空間名 add datafile '路徑' size 10MB;

(3)修改表空間的狀態

   alter tablespace 表空間名 offline/online; --邏輯文件

   alter tablespace 表空間名 datafile offline/online; --物理文件

6.刪除表空間及其所有的段:

   drop tablespace 表空間名 including contents;

7.數據字典:

   (1)dba_data_files:實例中所有數據文件和表空間的信息

   (2)dba_tablespaces:表空間的信息

   (3)dba_free_space:表空間的空閒空間信息

8.oracle數據類型

   (1).數字數據類型:number(p,s), p:精度,最大38位;  s:表示刻度範圍

   (2).字符數據類型:

       [1].char(L),無值時,以空格填充,L爲字符串,缺省爲1,作爲變量最大爲32767個字符,在數據                    存儲oracle8中最大爲2000;

       [2]varchar2(L):無值時,不會用空格填充,L爲字符串,無缺省值,作爲變量最大爲32767個字                    符,,在數據存儲oracle8中最大爲4000;

       [3]Long數據類型:可以保存高達2G的數據,作爲變量,可以表示一個最大長度爲32760字節的可                            變字符串.

   (3)date數據類型:用來存儲日期和時間格式的數據

   (4)lob數據類型:數據類存儲非結構化數據,如:二進制文件,圖形文件,或其他外部問價,可以存儲                        到4G字節大小

           [1]CLOB:字符型數據

           [2]BLOB:二進制數據

           [3]BFILE:二進制文件

9.DDL數據定義語言:用來改變數據庫結構,包括創建,修改,刪除數據庫對象.

(1)數據庫表是一個以行和列的形式存放數據的存儲單元,用來定義表的數據定語言有:

   [1]create table 創建表

   [2]alter table 修改表

   [3]truncate table 截斷表

   [4]drop table 刪除表


10.DML數據操縱語言:用於檢索,插入和修改數據庫信息

(1)Select 檢索

(2)insert 插入

(3)update 修改

(4)delete 刪除


11.DCL數據控制語言:爲用戶提供權限控制命令

(1)grant 授權

(2)revoke 撤銷


12.索引:[1]邏輯索引:

               (1)單列索引

               (2)組合索引

               (3)唯一性索引

               (4)非唯一性索引

               (5)函數索引

       [2]物理索引:

               (1)分區索引

               (2)飛分區索引

               (3)B樹索引

               (4)正向索引

               (5)反向索引  reverse

               (6)位圖索引  bitmap

13.創建索引:

   create [unique] index 索引名

   on 表名(列名1,列名2...)

   where 條件

   (1)例如:創建唯一索引

   create unique index 索引名 on 表(列名);

   (2)創建位圖索引

   create bitmap index 索引名 on 表(列名);

14.修改索引:

(1)重建索引

   alter index 索引名 rebuild;

(2)合併索引

   alter index 索引名 coalesce;


15.刪除索引

   drop index 索引名;


16.創建視圖:視圖是查詢一個或多個表的select語句的描述(可以把視圖看成一張虛擬表)

   create [or replace] view 視圖名

   as

   select 語句...

17.刪除視圖:(具有drop view和drop any view權限的用戶才能使用drop view刪除視圖)

   drop view 視圖名;


18.同義詞:

   (1)私有同義詞(只能被當前模式的用戶訪問)

   (2)公有同義詞(可以被所有的數據庫用戶訪問)

19.創建同義詞語法:

   create [or replace] [public] synonym 同義詞名

   for 對象

       (1)例如:創建私有同義詞

       create synonym myemp for scott.emp;

       使用:select * from myemp;

       (2)創建公有同義詞

       create public synonym public_name for scott.emp;

       使用:select  * from public_name;


20.刪除同義詞:

   drop [public] synonym 同義詞名;


21.序列是一數據庫對象,利用它生成唯一的整數.

(1)創建序列:

       create sequence 序列名

       [increment by n]   --增量

       [start with n]     --起始值

       [maxvalue n | nomaxvalue] --最大值

       [minvalue n | nominvalue] --最小值

       [cycle]    --循環

       [cache n]; --緩存

22.使用序列:

   (1)currcal:返回序列當前的值

   (2)nextval:返回序列下一個值

   注意:(3)先執行nextval,在執行currval;

   

   例如:插入數據使用序列

   insert into employee(emp_id,emp_name) value(my_seq.nextval,'張三');

   查看當前的值:select my_seq.currval from dual;


23.更改序列:

   alter sequence 序列名

   [increment by n]   --增量

   [start with n]     --起始值

   [maxvalue n | nomaxvalue] --最大值

   [minvalue n | nominvalue] --最小值

   [cycle]    --循環

   [cache n]; --緩存


24.刪除序列:

   drop sequence 序列名;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章