程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 深入講述Oracle 9i創建表空間

深入講述Oracle 9i創建表空間

編輯:Oracle數據庫基礎

下面是有關Oracle 9i創建表空間,用戶,授權,角色.常用的SQL語句,用sys帳號登陸,連接身份選SYSDBA,執行如下語句

// 創建表空間
drop tablespace test;
create tablespace test
DATAFILE 'D:\Oracle\oradata\test\test.dbf'
size 10M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;
alter user scott quota unlimited on test;
commit;

創建了一個名為test的表空間,數據庫文件創建 在D:\Oracle\oradata\test\test.dbf,並給scott 帳號授權使用表空間。

//創建scott用戶 並分配表空間
drop user scott cascade;
create user scott
identifIEd by tiger
default tablespace test
quota 100M on test;
commit;

//創建完畢後授權
Grant connect,resource,create session,create table,create sequence,create any vIEw,EXP_FULL_DATABASE, IMP_FULL_DATABASE, DBA,to scott;

//sql plus 中執行.sql 文件
@d:\xzsp_hrb_Oracle_doc.sql

//創建一個名為manager的角色
create role manager;

//給manager這個角色授於相應的系統權限
grant create table,create vIEw,create session to manager;

//授予針對某個對象的權限如查詢某個表的權限
grant select on 表名字 to manager; //可以把一個權限同時賦予多個角色或者用戶,但不能把多個權限同時賦予多個角色或者用戶,需分開執行。

//把manager這個角色分配給scott,xzsp兩個帳號。
grant manager to scott,xzsp;

//修改帳號scott密碼為tiger
alert user scott identifIEd by tiger;

//scott用戶建的表,如果想給其他用戶權限則必須用scott用戶登陸後執行如下語句,即使你是DBA也不把

一個用戶(scott)所創建的表賦予給另外一個用戶(xzsp)操作的權限,除非scott用戶給DBA授權。
grant select on 表名字 to xzsp;
grant select on employees to scott,xzsp;

//用scott用戶登陸 給system授權
grant select on student to system with grant option;

//用system 登陸,再把查詢student的權限授予另外一個用戶。
grant select on scott.student to xzsp;

//system同時可取消xzsp用戶的該權限。
revoke select on scott.student from xzsp;

權限傳遞的級聯:scott用戶把權限給A(同時允許A傳遞給其他用戶 with grand option),A把權限再傳遞給B,如果scott用戶撤消A的權限,則B也會失去相應的權限。

grant update (department_name,location_id) on departments to scott,xzsp; //授予用戶修改某個表中指定字段的權限。

grant select,insert on departments to scott with grant option; //把查詢,增加departments表的權限給scott用戶並允許他把權限授予給其他擁護。

grant select on scott.departments to public; //授予public 角色查詢scott下departments表的權限。

//訪問其他數據庫對象(database links)
create public database link hq.acme.com using 'sales';
select * from [email protected] //emp為表名
CREATE USER 創建一個用戶(通常由DBA來完成)。
GRANT 給於其他用戶使用你自己對象的權限。
CREATE ROLE 創建一個權限的集合,即角色。
ALTER USER 修改一個用戶的密碼。
REVOKE 撤消一個用戶在某個對象上的權限,如 表 視圖等。

----------------------查看用戶權限-----------------------------------
--------------------------------------------------------------------------
1.查看所有用戶:
select * from dba_users;
select * from all_users;
select * from user_users;

2.查看用戶或角色系統權限:
select * from dba_sys_privs;
select * from user_sys_privs;

3.查看用戶對象權限:
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;

4.查看所有角色:
select * from dba_roles;

5.查看用戶或角色所擁有的角色:
select * from dba_role_privs;
select * from user_role_privs;
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved