一
本節的主要內容是關於ORACLE數據庫的模式對象的管理與維護
由於表空間是包含這些模式對象的邏輯空間
創建表空間
SQL>CREATE TABLESPACE jxzy
>DATAFILE
>ONLINE;
修改表空間
SQL>ALTER TABLESPACE jxzy OFFLINE NORMAL;
SQL>ALTER TABLESPACE jxzy
>RENAME DATAFILE
>TO
>ONLINE
SQL>CREATE TABLESPACE jxzy ONLINE
刪除表空間
SQL>DROP TABLESPACE jxzy
>INCLUDING CONTENTS
表是數據庫中數據存儲的基本單位
表的建立
SQL>CREATE TABLE jxzy
>OFFICE_NUM NUMBER(
>SWITCH_CODE NUMBER(
>SWITCH_NAME VARCHAR
表的修改
SQL>ALTER TABLE jxzy
>ADD (DESC VARCHAR
表的刪除
SQL>DROP TABLE jxzy
>CASCADE CONSTRAINTS
//刪除引用該表的其它表的完整性約束
視圖是由一個或若干基表產生的數據集合
視圖的建立
SQL>CREATE VIEW jxzy
>(SELECT pole_path_num AS path
pole AS device_num FROM pole
>UNION
>SELECT pipe_path_num AS path
> well AS device_num FROM well);
視圖的替換
SQL>REPLACE VIEW jxzy
>(SELECT pole_path_num AS path
pole AS support_device FROM pole
>UNION
>SELECT pipe_path_num AS path
well AS support_device FROM well);
視圖的刪除
SQL>DROP VIEW jxzy
序列是由序列發生器生成的唯一的整數
序列的建立
SQL>CREATE SEQUENCE jxzy
>START WITH
>INCREMENT BY
>NO_MAXVALUE;
建立了一個序列
序列的修改
SQL>ALTER SEQUENCE jxzy
>START WITH
>INCTEMENT BY
>MAXVALUE
序列的刪除
SQL>DROP SEQUENCE jxzy
索引是與表相關的一種結構
對查詢型的表
索引分唯一索引和非唯一索引
索引的建立
SQL>CREATE INDEX jxzy
>ON switch(switch_name)
>TABLESPACE jxzy;
索引的修改
SQL>ALTER INDEX jxzy
>ON switch(office_num
>TABLESPACE jxzy;
索引的刪除
SQL>DROP INDEX jxzy
數據庫數據的完整性指數據的正確性和相容性
完整性約束是對表的列定義一組規則說明方法
a
b
c
d
e
例如
某列定義非空約束
SQL>ALTER TABLE office_organization
>MODIFY(desc VARCHAR
>CONSTRAINT nn_desc NOT NULL)
某列定義唯一關鍵字
SQL>ALTER TABLE office_organization
>MODIFY(office_name VATCHAR
>CONSTRAINT uq_officename UNIQUE)
定義主鍵約束
SQL>CREATE TABLE switch(switch_code NUMBER(
>CONSTRAINT pk_switchcode PRIMARY KEY
使主鍵約束無效
SQL>ALTER TABLE switch DISABLE PRIMARY KEY
定義外鍵
SQL>CREATE TABLE POLE(pole_code NUMBER(
>office_num number(
>CONSTRAINT fk_officenum
>REFERENCES office_organization(office_num)
>ON DELETE CASCADE);
定義檢查
SQL>CREATE TABLE office_organization(
>office_num NUMBER(
>CONSTRAINT check_officenum
>CHECK (office_num BETWEEN
二
ORACLE是多用戶系統
建立系統級的安全保證
系統級特權是通過授予用戶系統級的權利來實現
建立對象級的安全保證
對象級特權通過授予用戶對數據庫中特定的表
建立用戶級的安全保證
用戶級安全保障通過用戶口令和角色機制(一組權利)來實現
ORACLE用戶管理的內容主要包括用戶的建立
用戶的建立
SQL>CREATE USER jxzy
>IDENTIFIED BY jxzy_password
>DEFAULT TABLESPACE system
>QUATA
用戶的修改
SQL>CREATE USER jxzy
>IDENTIFIED BY jxzy_pw
>QUATA
刪除用戶及其所建對象
SQL>DROP USER jxzy CASCADE; //同時刪除其建立的實體
ORACLE 提供了
授予系統特權
SQL>GRANT CREATE USER
>TO jxzy_new
>WITH ADMIN OPTION;
回收系統特權
SQL>REVOKE CREATE USER
>FROM jxzy_new
//但沒有級聯回收功能
顯示已被授予的系統特權(某用戶的系統級特權)
SQL>SELECT*FROM sys
ORACLE對象特權指用戶在指定的表上進行特殊操作的權利
授予對象特權
SQL>GRANT SELECT
>UPDATE(desc)ON office_organization
>TO new_adminidtrator
>WITH GRANT OPTION;
//級聯授權
SQL>GRANT ALL ON office_organization
>TO new_administrator
回收對象特權
SQL>REVOKE UPDATE ON office_orgaization
>FROM new_administrator
//有級聯回收功能
SQL>REVOKE ALL ON office_organization
>FROM new_administrator
顯示已被授予的全部對象特權
SQL>SELECT*FROM sys
ORACLE的角色是命名的相關特權組(包括系統特權與對象特權)
From:http://tw.wingwit.com/Article/program/Oracle/201311/18378.html