1. 程式人生 > >4.Oracle之DCL的SQL語句之使用者許可權以及三大正規化

4.Oracle之DCL的SQL語句之使用者許可權以及三大正規化

DCL   Data Control Language,資料庫控制語言)用於定義資料庫許可權

一、使用者許可權

1.1  建立使用者以及授權:

    Eg CREATE USER 使用者名稱  IDENTIFIED BY 密碼 ;

1.2 GRANT 許可權 TO 使用者名稱  ;

  EgGRANT CREATE SESSION TO test ;建立許可權給test使用者

  EgGRANT CONNECT,RESOURCE TO test ;把倆個角色許可權覆給test使用者

1.3修改test使用者密碼為hello

  ALTER USER test IDENTIFIED BY hello ;

1.4清除test密碼

  ALTER USER test PASSWORD EXPIRE ;

1.5 將使用者賬號鎖住:ALTER USER 使用者名稱 ACCOUNT LOCK ;

  解鎖:ALTER USER 使用者名稱 ACCOUNT UNLOCK ;

1.6 將scott使用者查詢和刪除許可權給test使用者

  GRANT SELECT,DELETE ON scott.emp TO test ;

1.7 回收test使用者的許可權

       REVOKE SELECT,DELETE ON scott.emp FROM test ;

二、資料庫三大正規化

第一正規化:當關系模式R的所有屬性都不能在分解為更基本的資料單位時,稱R是滿足第一正規化的,簡記為1NF。滿足第一正規化是關係模式規範化的最低要

求,否則,將有很多基本操作在這樣的關係模式中實現不了。

  1.原子性不可再分    2.兩列相近的合併成一個列(地址中省,市不符合第一正規化)

第二正規化:如果關係模式R滿足第一正規化,並且R得所有非主屬性都完全依賴於R的每一個候選關鍵屬性,稱R滿足第二正規化,簡記為2NF。

  1.一行資料只能對應一件事。資料重複就需要拆分表(聯絡人和訂單分開)

第三正規化:設R是一個滿足第一正規化條件的關係模式,X是R的任意屬性集,如果X非傳遞依賴於R的任意一個候選關鍵字,稱R滿足第三正規化,簡記為3NF.

  1.沒有間接關係。主鍵於屬性有直接關係。

注:關係實質上是一張二維表,其中每一行是一個元組,每一列是一個屬性