顾美玲勾引管家|日韩黄色成人|国产精品theporn动漫|欧美日日日|国产精品探花在线

專業只做數據庫實訓和認證的品牌機構

微信公眾號新浪微博
免費咨詢電話:400-0909-964
當前位置: 網站首頁 > DBA實戰 > DBA課程 > Oracle對象知識:同義詞(Synonym)創建刪除

Oracle對象知識:同義詞(Synonym)創建刪除

文章來源: 更新時間:2016/7/20 14:39:51

在線老師點擊咨詢:

最新學訊:近期OCP認證正在報名中,因考試人員較多請盡快報名獲取最近考試時間,報名費用請聯系在線老師,甲骨文官方認證,報名從速!

我要咨詢

Oracle對象知識:同義詞(Synonym)創建刪除,同義詞(Synonym)是數據庫對象的一個別名,Oracle可以為表、視圖、序列、過程、函數、程序包等指定一個別名。同義詞有兩種類型:

`私有同義詞:擁有CREATE SYNONYM權限的用戶(包括非管理員用戶)即可創建私有同義詞,創建的私有同義詞只能由當前用戶使用。

`公有同義詞:系統管理員可以創建公有同義詞,公有同義詞可以被所有用戶訪問。

創建同義詞的語法是:

語法結構:同義詞

CREATE [OR REPLACE] [PUBLIC] SYSNONYM [schema.]synonym_name

FOR [schema.]object_name

語法解析:

① CREATE [OR REPLACE:]表示在創建同義詞時,如果該同義詞已經存在,那么就用新創建的同義詞代替舊同義詞。

② PULBIC:創建公有同義詞時使用的關鍵字,一般情況下不需要創建公有同義詞。

③ Oracle中一個用戶可以創建表、視圖等多種數據庫對象,一個用戶和該用戶下的所有數據庫對象的集合稱為Schema(中文稱為模式或者方案),用戶名就是Schema名。一個數據庫對象的全稱是:用戶名.對象名,即schema.object_name。

如果一個用戶有權限訪問其他用戶對象時,就可以使用全稱來訪問。比如:

代碼演示:System用戶訪問Scott用戶的Emp表

SQL> conn system/manager@orcl;

Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.3.0

Connected as system

 

SQL>  SELECT ENAME,JOB,SAL FROM SCOTT.EMP WHERE SAL>2000; 

 ENAME

JOB

SAL

JONES

MANAGER

2975

BLAKE

MANAGER

2850

CLARK

MANAGER

2450

SCOTT

ANALYST

3000

KING

PRESIDENT

5000

FORD

ANALYST

3000

 6 rows selected

代碼解析:

① 管理員用戶可以訪問任何用戶的數據庫對象,SYSTEM用戶訪問SCOTT用戶的EMP表時,必須使用SCOTT.EMP。

案例1:創建一個用戶XiaoMei,該用戶擁有CONNECT角色和RESOURCE角色。為SCOTT用戶的EMP表創建同義詞,并通過同義詞訪問該EMP表。

代碼演示:創建同義詞并訪問

SQL> CONN system/manager@orcl;

Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.3.0

Connected as system

SQL> CREATE USER XiaoMei IDENTIFIED BY XiaoMei;  

User created

SQL> GRANT CONNECT TO XiaoMei;

Grant succeeded

SQL> GRANT RESOURCE TO XiaoMei;

Grant succeeded

SQL> GRANT CREATE SYNONYM TO XiaoMei;

Grant succeeded

 

SQL> CONN XiaoMei/XiaoMei@ORCL;

Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.3.0

Connected as XiaoMei

 

SQL> CREATE SYNONYM MyEmp FOR SCOTT.EMP;  

Synonym created

SQL> SELECT * FROM MYEMP;  

SELECT * FROM MYEMP

ORA-00942: 表或視圖不存在

 

SQL> CONNECT SCOTT/tiger@ORCL

Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.3.0

Connected as SCOTT

 

SQL> GRANT ALL ON EMP TO XiaoMei;  

Grant succeeded

 

SQL> CONNECT XiaoMei/XiaoMei@ORCL;

Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.3.0

Connected as XiaoMei

 

SQL>  SELECT ENAME,JOB,SAL FROM MyEmp WHERE SAL>2000; 

 ENAME

JOB

SAL

JONES

MANAGER

2975

BLAKE

MANAGER

2850

CLARK

MANAGER

2450

SCOTT

ANALYST

3000

KING

PRESIDENT

5000

FORD

ANALYST

3000

 6 rows selected

代碼解析:

① 在管理員用戶下創建用戶XiaoMei,對用戶XiaoMei授予CONNECT和RESOURCE角色。為了XiaoMei能夠創建序列,必須授予系統權限:CREATE SYNONYM。

② 在XiaoMei用戶下,為SCOTT.EMP創建私有同義詞MyEmp,同義詞MyEmp只能在XiaoMei用戶下使用。訪問MyEmp就是訪問SCOTT.EMP對象。

③ 訪問MyEmp對象出錯:對象不存在。因為XiaoMei如果訪問MyEmp,就相當于訪問SCOTT.EMP對象,那么SCOTT用戶必須對XiaoMei授予相應的權限。

④ SCOTT用戶下,把EMP表的所有權限(增刪改查)授予XiaoMei。

⑤ 對MyEmp執行查詢操作。MyEmp就可以像在本地的表一樣使用。

刪除同義詞使用的語法是:

語法結構:刪除同義詞

DROP [PUBLIC] SYNONYM [schema.]sysnonym_name

語法解析:

① PUBLIC:刪除公共同義詞。

② 同義詞的刪除只能被擁有同義詞對象的用戶或者管理員刪除。

③ 此命令只能刪除同義詞,不能刪除同義詞下的源對象。

本文地址:http://www.mudan321.com/dba/kecheng/12524647890.html 轉載請注明!


PostgreSQL入門到精通 100+ 個學習資料

Oracle培訓機構

金牌講師<>

冉乃綱-老師CUUG金牌講師
冉老師 CUUG金牌講師 Oracle及RedHat高級講師、Unix/Linux 資深專家...[詳細了解老師]

免費咨詢上課流程 客服在線中

陳衛星-老師CUUG金牌講師
陳老師 CUUG金牌講師 精通Oracle管理、備份恢復、性能優化 11年Ora...[詳細了解老師]

免費咨詢上課流程 客服在線中

選學校如何選擇適合自己的學校

CUUG -CHINA UNIX USER GROUP,是國際UNIX組織UNIFORUM的中國代表,是國內悠久的專業UNIX培訓機構,被譽為中國UNIX 的搖籃。多年來,以提高教學質量為本,強調素質教育,積極引進、消化國外的新技術,有效的結合中國....[詳情]

一站式服務(從入學到就業一幫到底)

入學

學習

就業

實操

食宿
地址:北京市海淀區田村山南路35號院17號樓
課程咨詢: 400-0909-964
企業服務:137 1818 8639(陳經理)
部分信息來源于網絡,如有錯誤請聯系指正!
版權所有@北京神腦資訊技術有限公司 (CUUG,中國UNIX用戶協會) Copyright 2016 ALL Rights Reserved 京ICP備11008061號-1