標籤:
今天要跟大家來聊一聊俺在使用Oracle資料庫的這段時間裡面學到的一些知識。
俺最近出來工作了,來到的公司是使用的Oracle資料庫,之前一直使用的是SQL的資料庫,在性質上二者前者是收費的,後者是開源的;在使用上主要還是靠自己探索,下面說說俺的一些收穫。在前段時間俺一直在鼓搗組長分下來的一個任務,定時同步資料的一個小程式,俺的Oracle之旅也是從這裡才算是正式開始的。
近期的學習中俺瞭解到Oracle資料庫本身是內建三個預設使用者的:sys(網路系統管理員)、system(本地普通管理員)、scott(本地普通使用者)。目前俺只是瞭解了system這個使用者,瞭解的也只是許可權上的一些皮毛,其它兩個還沒有認知。我們在使用Oracle資料庫時會建立不同的使用者來對應不同的系統或者程式,不同的使用者下面有自己對應的表和資料。下面這個就是建立使用者的前一部分語句:
-- Create the user create user JCSYN <span style="white-space:pre"></span>----建立JCSYN這個角色 identified by password<span style="white-space:pre"></span>----給這個角色設定密碼 default tablespace PMS<span style="white-space:pre"></span>----預設的資料表空間 temporary tablespace TEMP<span style="white-space:pre"></span>----臨時的資料表空間 profile DEFAULT<span style="white-space:pre"></span>----設定檔預設 quota unlimited on pms<span style="white-space:pre"></span>----配置非限額在PMS這個資料表空間 quota unlimited on pms_lob;<span style="white-space:pre"></span>----配置非限額在PMS_LOB這個資料表空間
如果我們僅僅是建立這個角色的話就沒有問題了,但是我們現在使用中還需要用到增上改查之類的操作,這就需要我們賦予角色特定的許可權,這樣才能實現我們的使用要求,下面就是一些語句:
賦予許可權的語句:grant 許可權 to 使用者;
移除許可權的語句:revoke 許可權 from 使用者;
如果我們不清楚角色都有什麼許可權,我們可以使用下面的語句來尋找資料庫中的所有角色許可權資訊:
select * from user_sys_privs ;
下面我將使用過的建立角色語句給大家看一下,僅供參考!
-- Create the user create user JCSYN identified by password default tablespace PMS temporary tablespace TEMP profile DEFAULT quota unlimited on pms quota unlimited on pms_lob;-- Grant/Revoke object privileges grant select, insert, update, delete on HORIZON.TOR_HORIZON_USER_DEPT to JCSYN;grant select, insert, update, delete on HORIZON.TO_HORIZON_DEPT to JCSYN;grant select, insert, update, delete on HORIZON.TO_HORIZON_USER to JCSYN;grant select, insert, update, delete on HORIZON.TPR_HORIZON_OBJ_ROLE to JCSYN;-- Grant/Revoke role privileges grant connect to JCSYN;grant scheduler_admin to JCSYN;-- Grant/Revoke system privileges grant alter any procedure to JCSYN;grant create any synonym to JCSYN;grant create database link to JCSYN;grant create job to JCSYN;grant create materialized view to JCSYN;grant create procedure to JCSYN;grant create public database link to JCSYN;grant create sequence to JCSYN;grant create synonym to JCSYN;grant create table to JCSYN;grant create trigger to JCSYN;grant create type to JCSYN;grant create view to JCSYN;grant debug any procedure to JCSYN;grant debug connect session to JCSYN;grant delete any table to JCSYN;grant drop public database link to JCSYN;grant execute any class to JCSYN;grant execute any library to JCSYN;grant execute any procedure to JCSYN with admin option;grant execute any program to JCSYN with admin option;grant execute any type to JCSYN;grant manage scheduler to JCSYN;grant select any dictionary to JCSYN;grant select any table to JCSYN;
Oracle資料庫學習小結(一)