Oracle 創建synonym 同義詞詳解

2020-12-13 百家號

Oracle synonym 同義詞

Oracle synonym 同義詞是資料庫當前用戶通過給另外一個用戶的對象創建一個別名,然後可以通過對別名進行查詢和操作,等價於直接操作該資料庫對象。Oracle同義詞常常是給表、視圖、函數、過程、包等制定別名,可以通過CREATE 命令進行創建、ALTER 命令進行修改、DROP 命令執行刪除操作。

Oracle synonym 同義詞按照訪問權限分為私有同義詞、公有同義詞。

私有同義詞:私有同義詞只能當前用戶可以訪問,前提:當前用戶具有create synonym 權限。

公有同義詞:公有同義詞只能具有DBA用戶才能進行創建,所有用戶都可以訪問的。

語法結構:

CREATE [OR REPLACE] [PUBLIC] SYSNONYM [當前用戶.]synonym_nameFOR [其他用戶.]object_name;

解析:

1、create [or replace] 命令create建表命令一樣,噹噹前用戶下同義詞對象名已經存在的時候,就會刪除原來的同義詞,用新的同義詞替代上。

2、[public]:創建的是公有同義詞,在實際開發過程中比較少用,因為創建就代表著任何用戶都可以通過自己用戶訪問操作該對象,一般我們訪問其他用戶對象時,需要該用戶進行授權給我們。

3、用戶名.object_name:oralce用戶對象的權限都是自己用戶進行管理的,需要其他用戶的某個對象的操作權限,只能通過對象擁有者(用戶)進行授權給當前用戶。或者當前用戶具有系統管理員權限(DBA),即可通過用戶名.object_name操作該對象。

案例分析:

我們在jsq_copy用戶下也創建了一張學生信息表(stuinfo),該信息表只存在一個學生信息「張三丰」。由於我們當前用戶student用戶不具有jsq_copy.stuino的權限,因此要需要該用戶授權,然後才能訪問。代碼如下:

--未授權之前查詢(提示表不存在,沒有操作權限)select * from jsq_copy.stuinfo;--登錄jsq_copy用戶進行授權conn jsq_copy/123456;grant all on stuinfo to student;--授權後再次查詢該表數據conn student/123456;select * from jsq_copy.stuinfo;

結果:

我們現在為jsq_copy.stuinfo創建同義詞stuinfo_copy,然後通過當前用戶student直接操作同義詞stuinfo_copy查詢jsq_copy.stuinfo表數據。代碼如下:

create synonym stuinfo_copy for jsq_copy.stuinfo;

結果:

同義詞刪除

同義詞刪除只能通過同義詞擁有者的用戶或者具有DBA權限的用戶才能刪除。

語法結構:

DROP [PUBLIC] SYNONYM [用戶.]sysnonym_name;

相關焦點

  • 有關Oracle資料庫中同義詞的簡單介紹
    第1頁有關Oracle資料庫中同義詞的簡單介紹  Oracle資料庫中有關同義詞的一些知識是我們本文主要要介紹的內容,首先我們先看一個語句,如下:  create synonym table_name for user.table_name;  其中第一個user_table和第二個user_table可以不一樣。
  • Oracle新聞
    有關Oracle資料庫中同義詞的簡單介紹05-04Oracle資料庫中有關同義詞的一些知識是我們本文主要要介紹的內容,首先我們先看一個語句,如下:create synonym table_name for
  • Oracle中的概念:同義詞、序列與視圖
    【IT168 技術文檔】  同義詞 synonym  CREATE [PUBLIC]SYNONYM synonym For schema.object  隱藏對象的名稱和所有者:  select count(*) from hr.employees
  • 使用plsql創建oracle定時器
    工作中,我們使用的資料庫大部分是oracle、mysql、db2、sql server等資料庫,在使用oracle最匹配的工具plsql的時候,如果用plsql創建定時器呢?下面我簡單介紹使用工具創建定時器的方法。
  • 【分享】Oracle 常用運維命令匯總
    一、oracle建庫與刪庫命令(1)oracle11g建庫(一般習慣配置gdbname與sid名一樣,sys密碼與system密碼一樣,以方便記憶)[oracledb@ ~]$ dbca -silent -createDatabase -templateName /u01/oracle
  • 如何使用plsql工具創建oracle資料庫的定時器
    我們使用的資料庫大部分是oracle、mysql、db2、sql server等資料庫,在使用oracle最匹配的工具plsql,如何用plsql創建定時器呢?下面我簡單介紹使用工具創建定時器的方法。創建一個新的job(定時器)輸入紅色選中的必輸參數。What裡面是一些存儲過程,可以是一個或者多個。多個之間用分好;隔開,可以數據一下注釋說明,格式「/*存過說明*/。點擊應用即可保存。點擊View SQL可以查看job對應的sql腳本。如果想查看一些腳本,處理通過打開文件夾的方式,也可以使用更方便的sql語句進行查看。
  • 零基礎學Oracle之2:開始使用oracle
    而oracle則力推java,把java虛擬機內嵌到oracle中。[oracle@wl database]$ ./runInstaller 在資料庫軟體目錄下執行這個安裝,類似於windows的setup
  • 「Oracle資料庫」oracle11g體系結構——數據字典詳解
    數據字典是oracle資料庫存放資料庫內部信息的地方,用來描述資料庫內部的運行和管理情況。比如像一個數據表的創建時間、所有者、用戶訪問權限等都是保存在數據字典中的,用戶可以通過查詢這些數據字典獲取幫助信息。
  • Oracle的使用——創建用戶
    2.創建永久表空間的命令只能以sys用戶登錄才可以創建永久表空間create tablespace 永 久 表 空 間 名 稱 datafile ' 永 久 表 空 間 物 理 文 件 位 置 ' size 15M autoextend on
  • 資料庫詳解:Oracle 監聽器日誌解析
    ————————別名 LISTENER版本 TNSLSNR for 32-bit Windows: Version10.2.0.1.0 – Produ ction啟動日期 29-6月-2011 10:51:26正常運行時間 0天2小時50分3秒跟蹤級別 off安全性 ON: Local OS Authentication SNMP OFF監聽程序參數文件 C: ooloracleoracleproduct10.2.0db
  • Oracle 11g資料庫數據泵的實際應用
    實際上,IMPDP只是從DMP文件中提取對象的DDL語句,這樣IMPDP並不把數據導入數據中,只是創建DDL語句。例如:向SCOTT模式中導入test.sql文件中的DDL語句。[oracle@SC001 ~]$ mkdir -p /home/oracle/mydata #創建用於存儲導出的文件及日誌[oracle@SC001 ~]$ sqlplus / as sysdbaSQL> create directory dump_dir as '/home/oracle/mydata';SQL> grant read,write on
  • 最方便的在線SQL學習環境——Oracle Live SQL
    如果還沒有Oracle.com 帳戶的話,可以點擊【創建帳戶】免費創建用戶。輸入相關內容創建用戶,然後進行登錄。第一次登陸時,接受免責聲明。參考https://blogs.oracle.com/imc/oracle-live-sql
  • efficacious「有效的;奏效的;靈驗的」的運用及同義詞比較
    The last synonym, efficient, implies an acting or potential for acting that avoids loss or waste of energy ("an efficient small car").
  • 大連微笑漢語精品學校分享:漢語同義詞辨析Synonym Discrimination...
    漢語同義詞辨析Synonym Discrimination in Chinese Language 中文,眾所周知,是一種比較複雜的語言。即使說話人能基本運用正確的語法知識,但在句子中,難免會用錯一些意思相近,但用法卻完全不同的詞語,這些詞語叫:同義詞。如果想真正說出一口地道的漢語,辨析同義詞是必不可少的一部分。下面,就給大家簡單介紹一些常用的、基本的同義詞及辨析。
  • oracle索引的深思
    創建索引就是對某些特定列中的數據進行排序或歸類,生成獨立的索引表。在某列上創建索引後,如果該列出現在查詢條件中,Oracle 會自動的引用該索引,先從索引表中查詢出符合條件記錄的 ROWID,由於 ROWID 是記錄的物理地址,因此可以根據 ROWID 快速的定位到具體的記錄,當表中的數據非常多時,引用索引帶來的查詢效率非常可觀 。
  • ORACLE資料庫日常維護的九大知識點
    【IT168 評論】oracle資料庫是一種大型資料庫系統,一般應用於商業,政府部門,它的功能很強大,能夠處理大批量的數據,在網絡方面也用的非常多。首先要說的是,不同版本資料庫提供的系統表會有不同,你可以根據數據字典查看該版本資料庫所提供的表。
  • SQL Server資料庫和Oracle行轉列的特殊方案描述
    現在我們想把兩人在不同階段擁有的金幣用類似如下的表格來展現: 姓名 年輕 中年 老年 張三 1000 5000 800 李四 1200 6000 500 我們現在考慮用最簡單和直接的辦法來實現,其實關鍵是如何創建那些需要增加的列,且如何設定其值,現在我們來創建「年輕」列,關鍵的問題是,這一列的值如何設定?
  • Create的詳解和同義詞,Build、Do、Make等,你還能想出多少呢?
    Create的同義詞!本文提供了常用的創建同義詞列表,其中包含ESL圖片和有用的示例句子。學習那些用來代替創造的詞來擴大你的英語詞彙量。學習用英語創建的同義詞列表。起航Produce 生產;引起;創作Synthesize 合成;綜合Create Synonyms Infographic 創建同義詞信息圖表
  • Oracle數據導入 - 百度經驗
    Oracle數據導入創建用戶--在cmd下執行sqlplus system/oracle--在sqlplus下執行創建用戶Drop user username cascade;create user username identified by "password" default tablespace users temporary
  • 學生多功能同義詞近義詞反義詞詞典
    給出的同義詞、近義詞、反義詞後均附有豐富的搭配。部分詞目下設有「辨析」欄目,詳辨、詳解容易混淆的詞語及其用法,幫助小學生理解詞義,提高語言表達和寫作能力。·裝幀精美根據小學生的認知特點設計版式,並精心繪製近600幅卡通插圖,形象展示字、詞相關內容,便於讀者直觀理解。