Oracle資料庫許可權設定(三)

2021-10-01 20:30:42 字數 3885 閱讀 4476

一、系統預設登入

普通使用者:conn scott/密碼

普通管理員:conn system/密碼

超級管理員:conn sys as sysdba; 然後輸入密碼;

二、建立新使用者

create

user 使用者名稱 identified by 密碼;

三、賦予新使用者許可權允許使用者登入

grant

create

session

to 使用者名稱;

允許新使用者連線資料庫,並建立資料庫物件
grant

connect

to 使用者名稱;

允許使用者使用資源的許可權(例如建立表、修改表)
grant resource to 使用者名稱;
允許使用者建立表空間
grant

create

tablespace

to 使用者名稱;

允許使用者使用表空間
grant unlimited session

to 使用者名稱;

允許使用者查詢test表的記錄
grant

select

on test to 使用者名稱;

允許使用者更新test表中的記錄
grant

update

on test to 使用者名稱;

允許使用者增、刪、改、查test表中的記錄
grant

allon test to 使用者名稱;

允許使用者刪除表
grant

drop

on 表名 to 使用者名稱;

更改使用者密碼
alter

user 使用者名稱 identified by 新密碼;

授予對指定表特定欄位的插入和修改許可權,注意,只能是insert和update
grant

update

(id)

on 表名 to 使用者名稱;

授予使用者alert任意表的許可權
grant alert all

table

to 使用者名稱;

刪除使用者
drop

user 使用者名稱 [

cascade

];

(注:當使用者下有表或其它物件時,需要新增cascade關鍵字,級聯刪除物件)

允許使用者建立檢視view

grant

create

anyview

to 使用者名稱;

取消使用者操作表的許可權(同義詞也不能用)
revoke

allon 表名 from 使用者;

允許使用者建立公有同義詞
grant

create

public synonym to 使用者名稱;

允許使用者刪除公有同義詞
grant

drop

public synonym to 使用者名稱;

允許使用者建立 基於函式索引
grant query rewrite to 使用者名稱;
四、授予其他使用者許可權將儲存過程的執行許可權授予其他使用者

grant

execute

on 儲存過程名稱 to 使用者名稱;

grant

execute

on swap to

public

;

刪除儲存過程
drop

procedure 儲存過程名稱;

五、檢視許可權檢視當前使用者所有許可權

select

*from user_ sys_ _privs;

檢視所用使用者對錶的許可權
select

*from user_ tab_ privs;

六、排序rank() over(order by 列名) rank :並列跳空例如:查詢每個學生的的姓名,考試的課程名和分數,並按分數進行排序,能產生並列跳空的序號

select st.stuname as 學生姓名,c.cname as 課程名稱,sc.grade as 分數,rank() over(order by sc.grade) rank from student st,course c,score sc where st.id = sc.id and c.cid = sc.cid;

dense_rank() over(order by 列名) dense_rank :並列不跳空

例如:查詢每個學生的的姓名,考試的課程名和分數,並按分數進行排序,能產生並列跳空的序號

select st.stuname as 學生姓名,c.cname as 課程名稱,sc.grade as 分數,dense_rank() over(order by sc.grade) dense_rank from student st,course c,score sc where st.id = sc.id and c.cid = sc.cid;

row_number() over(order by 列名) row_number :依次排序

例如:查詢每個學生的的姓名,考試的課程名和分數,並按分數進行排序,能產生並列跳空的序號

select st.stuname as 學生姓名,c.cname as 課程名稱,sc.grade as 分數,row_number() over(order by sc.grade) row_number from student st,course c,score sc where st.id = sc.id and c.cid = sc.cid;

Oracle資料庫許可權

oracle系統提供三種許可權 object 物件級 system 系統級 role 角色級。許可權分類 1 系統許可權 系統規定使用者使用資料庫的許可權。系統許可權是對使用者而言 2 實體許可權 某種許可權使用者對其它使用者的表或檢視的訪問許可權。是針對表或檢視而言的 系統許可權主要有 dba 擁...

Oracle資料庫許可權

sql create user user50 identified by user50 sql grant connect,resource to user50 sql select from dba role privs sql select from dba sys privs sql sele...

資料庫的許可權設定

use te 使用資料庫 exec sp grantlogin windows身份驗證 exec sp addlogin 使用者名稱 密碼 sql身份驗證 exec sp grantdbaccess tc qq dv 給當前使用者新增訪問te資料庫的許可權,後面的引數是別名 grant select...