日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
ORCAL數(shù)據(jù)庫妙用:掌握同義詞的使用技巧(orcal數(shù)據(jù)庫同義詞)

ORCAL數(shù)據(jù)庫是Oracle公司開發(fā)的一種用于管理和處理企業(yè)級應用程序數(shù)據(jù)的關(guān)系數(shù)據(jù)庫管理系統(tǒng)。作為業(yè)內(nèi)最常用、最可靠的數(shù)據(jù)庫之一,ORCAL數(shù)據(jù)庫極大地促進了企業(yè)技術(shù)的發(fā)展。ORCAL數(shù)據(jù)庫強大而靈活的功能,為用戶提供了其他數(shù)據(jù)庫無法滿足的數(shù)據(jù)管理解決方案。

成都網(wǎng)站設計、網(wǎng)站建設,成都做網(wǎng)站公司-創(chuàng)新互聯(lián)已向成百上千家企業(yè)提供了,網(wǎng)站設計,網(wǎng)站制作,網(wǎng)絡營銷等服務!設計與技術(shù)結(jié)合,多年網(wǎng)站推廣經(jīng)驗,合理的價格為您打造企業(yè)品質(zhì)網(wǎng)站。

數(shù)據(jù)庫中的同義詞是一個關(guān)鍵功能,大大提高了數(shù)據(jù)庫的靈活性和用戶的便利性。本文將探討orcal數(shù)據(jù)庫同義詞的使用技巧,以幫助用戶更好地利用數(shù)據(jù)庫。

一、同義詞的定義和用途

同義詞在ORCAL數(shù)據(jù)庫中指一組指向一個對象、在操作上與原對象具有相同效果的替代名稱。同義詞是一個虛擬對象,它們并不占用數(shù)據(jù)庫中的實際存儲空間。

同義詞的主要用途是為了方便對數(shù)據(jù)庫對象的訪問,特別是當數(shù)據(jù)庫中有多個模式時,同義詞可以使得在不同模式中訪問相同對象更加便捷、直觀。同義詞還可以改變數(shù)據(jù)庫對象的名稱,以便在程序發(fā)生變化時,不會破壞程序和表之間的連接。

二、同義詞的創(chuàng)建和使用

在ORCAL數(shù)據(jù)庫中,同義詞可以通過以下方式創(chuàng)建:

CREATE [PUBLIC] SYNONYM synonym_name

FOR [schema.]object_name[@database_link];

CREATE語句中,PUBLIC關(guān)鍵字是可選的。如果在創(chuàng)建同義詞時使用PUBLIC關(guān)鍵字,則該同義詞可以在整個數(shù)據(jù)庫中使用;否則該同義詞只能在本用戶或角色下使用。

schema是對象所在的模式名稱,object_name是該對象的名稱,database_link是數(shù)據(jù)庫鏈名,如果該對象不在本地數(shù)據(jù)庫中,則需要指定外部數(shù)據(jù)庫名。

例如,創(chuàng)建一個同義詞,用于訪問用戶hr下的表employees:

CREATE SYNONYM hr_emp

FOR hr.employees;

創(chuàng)建同義詞后,可以通過以下方式訪問原對象:

SELECT * FROM hr_emp;

如果hr模式名發(fā)生變化,只需要修改創(chuàng)建同義詞的模式名,而不需要修改原程序和表的名稱。

同義詞除了可以用于訪問表和視圖外,還可以用于訪問存儲過程、函數(shù)等數(shù)據(jù)庫對象。例如,創(chuàng)建同義詞,用于執(zhí)行存儲過程:

CREATE SYNONYM sp_test

FOR hr.test_sp;

執(zhí)行存儲過程:

EXEC sp_test(param1, param2);

三、同義詞的注意事項

在使用同義詞時,需要注意以下幾點:

1. 同義詞只能訪問有訪問權(quán)限的對象,在使用同義詞前,需要授權(quán)該用戶或角色對該對象進行訪問。

2. 同義詞不能替代數(shù)據(jù)庫內(nèi)部對象的名稱,例如,不能創(chuàng)建同義詞以替代表或視圖的名稱,否則會導致數(shù)據(jù)訪問失敗。

3. 在使用同義詞時,需要避免使用復雜的對象命名規(guī)則,以免產(chǎn)生命名沖突。

4. 創(chuàng)建同義詞時,需要確保同義詞和原對象名稱大小寫一致。

5. 如果多個用戶需要訪問同一個對象,可以創(chuàng)建同義詞,并進行授權(quán),而不是每個用戶都訪問原對象。

四、

ORCAL數(shù)據(jù)庫的同義詞是一項極其便利的功能,可以使得數(shù)據(jù)庫的訪問更加直觀、靈活,同時也提高了數(shù)據(jù)庫的安全性和可維護性。本文介紹了同義詞的定義、用途、創(chuàng)建和使用技巧,并指出了使用同義詞需要注意的事項。希望本文能夠幫助ORCAL數(shù)據(jù)庫使用者更好地掌握同義詞的使用技巧,提高數(shù)據(jù)操作效率。

成都網(wǎng)站建設公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導10多年以來專注數(shù)字化網(wǎng)站建設,提供企業(yè)網(wǎng)站建設,高端網(wǎng)站設計,響應式網(wǎng)站制作,設計師量身打造品牌風格,熱線:028-86922220

oracle數(shù)據(jù)庫同義詞導入錯誤,怎么重新導入

oracle導入的同義詞其實就是一個創(chuàng)建語句而已,如果同義詞很多的話,直接用PL/SQL Developer的菜單欄的工具=>導出對象里面選擇需要洞輪廳導出的同義詞 命名為imp_synonym.sql 導出路徑比如設置位D盤根目錄 D:\ imp_synonym.sql 完成納隱后 打開cmd窗口 輸入 D:

進入到D盤,然后sqlplus到目標數(shù)據(jù)庫,然后輸入 @imp_synonym.sql 或者直接寫全路徑

@D:\imp_synonym.sql直接執(zhí)行這個腳本文件桐汪就導入同義詞了。

oracle同義詞查詢不了。

SELECT * FROM SYS.ALL_SYNONYMS WHERE SYNONYM_NAME=’S’.里面有

同義詞

的表與用戶

  同義詞權(quán)限管理

  與同義詞相關(guān)的權(quán)限有CREATE SYNONYM、CREATE ANY SYNONYM、CREATE PUBLIC SYNONYM權(quán)限。

  1:用戶在自己的模式下創(chuàng)建私有同義詞,這個用戶必須擁有CREATE SYNONYM權(quán)限,否則不能創(chuàng)建私有同義詞。

  如下所示,用戶DM缺少CREATE SYNONYM權(quán)限,創(chuàng)建同義詞時會報ORA01031錯誤

  SQL> CREATE SYNONYM TEST FOR DM.TM_WGG_ATM_GTW_MON;

  CREATE SYNONYM TEST FOR DM.TM_WGG_ATM_GTW_MON

  ORA01031: insufficient privileges

  用sys賬號給DM賬號賦予CREATE SYNONYM的權(quán)限

  SQL> GRANT CREATE SYNONYM TO DM;

  Grant succeeded.

  然后創(chuàng)建私有同義詞

  SQL> CREATE SYNONYM TEST FOR DM.TM_WGG_ATM_GTW_MON;

  Synonym created

  2:如果需要在其它模式下創(chuàng)建同義詞,則必須具有CREATE ANY SYNONYM的權(quán)限。

  看下面的例子

  用戶DM想創(chuàng)建SCOTT模式下的私有同義詞

  SQL> CREATE SYNONYM SCOTT.EM FOR SOCTT.EMP;

  CREATE SYNONYM SCOTT.EM FOR SOCTT.EMP

  ORA01031: insufficient privileges

  用sys賬號稿渣給DM賬號賦予CREATE ANY SYNONYM的權(quán)限

  SQL> GRANT CREATE ANY SYNONYM TO DM;

  Grant succeeded.

  SQL> CREATE SYNONYM SCOTT.EM FOR SOCTT.EMP;

  Synonym created

  3:創(chuàng)建公有同義詞則需蠢賣要CREATE PUBLIC SYNONYM系統(tǒng)權(quán)限。

  創(chuàng)建同義詞

  創(chuàng)建同義詞的語法如下:

  clip_image001

  普通用法如下所示:

  CREATE SYNONYM 同義詞名稱 FOR object ;

  專有(私有)同義詞

  CREATE SYNONYM SYSN_TEST FOR TEST;

  公共同義詞

  CREATE PUBLIC SYNONYM PUBLIC_TEST FOR TEST;

  如果要創(chuàng)建一個遠程的數(shù)據(jù)庫上的某張表的同義詞,需要先創(chuàng)建一個Database Link(數(shù)據(jù)庫連接)來擴展訪問,然后再使用如下語句創(chuàng)建數(shù)據(jù)帶敬逗庫同義詞:create synonym table_name for table_name@DB_Link;

  公共同義詞是和用戶的schema無關(guān)的,但是公共的意思并不是所有的用戶都可以訪問它,必須被授權(quán)后才能進行;私有同義詞是schema的對象

  查看同義詞

  SQL> SELECT * FROM DBA_SYNONYMS WHERE SYNONYM_NAME IN ( ‘SYSN_TEST’,’PUBLIC_TEST’);

  OWNER SYNONYM_NAME TABLE_OWNER TABLE_NAME DB_LINK

  

  PUBLIC PUBLIC_TESTETLTEST

  ETLSYSN_TESTETLTEST

  SQL> SELECT * FROM USER_SYNONYMS

  使用同義詞

  SELECT * FROM SYSN_TEST;

  使用同義詞可以保證當數(shù)據(jù)庫的位置或?qū)ο竺Q發(fā)生改變時,

應用程序

的代碼保持穩(wěn)定不變,僅需要改變同義詞;

  當使用一個沒有指定schema的同義詞是,首先在用戶自己的schema中尋找,然后再公共同義詞中尋找

  刪除同義詞

  DROP SYNONYM 同義詞名稱 ;

  DROP SYNONYM SYSN_TEST;

  DROP PUBLIC SYNONYM PUBLIC_TEST;當同義詞的原對象被刪除是,同義詞并不會被刪除

  編譯同義詞

  ALTER SYNONYM T COMPILE; 當同義詞的原對象被重新建立時,同義詞需要重新編譯

  對原對象進行DDL操作后,同義詞的狀態(tài)會變成INVALID;當再次引用這個同義詞時,同義詞會自動編譯,狀態(tài)會變成VALID,無需人工干預,當然前提是不改變原對象的名稱

  SQL> SELECT * FROM T;

  ID NAME

  

  SQL> SELECT * FROM TEST;

  ID NAME

  

  SQL> ALTER TABLE TEST ADD SEX NUMBER(1);

  Table altered

  SQL> SELECT OBJECT_NAME, STATUS FROM ALL_OBJECTS WHERE OBJECT_NAME=’T’;

  OBJECT_NAME STATUS

  

  T INVALID

  問題錦集

  1:公用同義詞與私有同義詞能否同名呢?如果可以,訪問同義詞時,是共有同義詞還是私有同義詞優(yōu)先?

  可以,如果存在公用同義詞和私有同義詞同名的情況,在訪問同義詞是,訪問的是私有同義詞的指向的對象。

  2:為啥OE用戶創(chuàng)建的公用同義詞,HR用戶不能訪問呢?

  因為HR沒有訪問OE模式下對象的權(quán)限,如果OE模式給HR用戶賦予了SELECT對象等權(quán)限,那么HR用戶即可訪問。

  3:對象、私有同義詞、公共同義詞是否可以存在三者同名的情況?

  在用戶kerry下,創(chuàng)建表TEST

  SQL>CREATE TABLE TEST

  AS SELECT * FROM USER_OBJECTS WHERE 1= 0;

  創(chuàng)建私有同義詞TEST

  SQL> CREATE SYNONYM TEST FOR REF.REF_WGG_STUDENT;

  CREATE SYNONYM TEST FOR REF.REF_WGG_STUDENT

  ORA00955: name is already used by an existing object

  注意:對象(表)與私有同義詞不能同名,否則會報ORA00955錯誤

  創(chuàng)建公共同義詞TEST,如下所示,公共同義詞可以對象同名

  SQL> CREATE PUBLIC SYNONYM TEST FOR REF.REF_WGG_STUDENT;

  Synonym created

  訪問TEST時,如下所示:它是表TEST的內(nèi)容,而不是公共同義詞的內(nèi)容

  SQL> SELECT * FROM TEST;

  OBJECT_NAME SUBOBJECT_NAME OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE CREATED LAST_DDL_TIME TIMESTAMP STATUS TEMPORARY GENERATED SECONDARY

  

  刪除表TEST后,此時數(shù)據(jù)庫訪問的是公共同義詞

  SQL> DROP TABLE TEST PURGE;

  Table dropped

  SQL> SELECT * FROM TEST;

  ID NAME

  

  1 12

  SQL>

關(guān)于orcal數(shù)據(jù)庫同義詞的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都創(chuàng)新互聯(lián)科技有限公司,經(jīng)過多年的不懈努力,公司現(xiàn)已經(jīng)成為一家專業(yè)從事IT產(chǎn)品開發(fā)和營銷公司。廣泛應用于計算機網(wǎng)絡、設計、SEO優(yōu)化、關(guān)鍵詞排名等多種行業(yè)!


網(wǎng)頁標題:ORCAL數(shù)據(jù)庫妙用:掌握同義詞的使用技巧(orcal數(shù)據(jù)庫同義詞)
當前地址:http://www.dlmjj.cn/article/cosssgh.html