![SQL語句中create的使用 (synonym同義詞).doc_第1頁](http://file.renrendoc.com/FileRoot1/2020-1/13/79edf09b-bc68-4c65-994e-97d410e77f6b/79edf09b-bc68-4c65-994e-97d410e77f6b1.gif)
![SQL語句中create的使用 (synonym同義詞).doc_第2頁](http://file.renrendoc.com/FileRoot1/2020-1/13/79edf09b-bc68-4c65-994e-97d410e77f6b/79edf09b-bc68-4c65-994e-97d410e77f6b2.gif)
![SQL語句中create的使用 (synonym同義詞).doc_第3頁](http://file.renrendoc.com/FileRoot1/2020-1/13/79edf09b-bc68-4c65-994e-97d410e77f6b/79edf09b-bc68-4c65-994e-97d410e77f6b3.gif)
![SQL語句中create的使用 (synonym同義詞).doc_第4頁](http://file.renrendoc.com/FileRoot1/2020-1/13/79edf09b-bc68-4c65-994e-97d410e77f6b/79edf09b-bc68-4c65-994e-97d410e77f6b4.gif)
![SQL語句中create的使用 (synonym同義詞).doc_第5頁](http://file.renrendoc.com/FileRoot1/2020-1/13/79edf09b-bc68-4c65-994e-97d410e77f6b/79edf09b-bc68-4c65-994e-97d410e77f6b5.gif)
免費預覽已結束,剩余1頁可下載查看
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
SQL語句中create的使用 (synonym同義詞)select * from emp;等用于select * from abc;建立共有的同義詞如果用戶的等級不夠建立public同義詞,可以在system下授權:grant create any synonym to scott;grant create public synonym to scott;取消授權:revoke create any synoym from scott;revoke create public synoym from scott;取消同義詞:drop public synonym abc;授權取消同義詞:grant dorp public synonym to scott;取消授權:revoke drop public synonym to scott;引入同義詞(Synonym)的原因在一些商業(yè)數(shù)據(jù)庫中,有時信息系統(tǒng)的設計或開發(fā)者為了增加易讀性,故意定義一些很長的表名(也可能是其它的對象)。這樣雖然增加了易讀性,但在引用這些表 或對象時就不那么方便,也容易產(chǎn)生輸入錯誤。另外在實際的商業(yè)公司里,一些用戶覺得某一個對象名有意義也很好記,但另一些用戶可能覺得另一個名字更有意 義。ORACLE系統(tǒng)提供的同義詞(Synonym)就是用來解決以上的難題的。設想一下在您的日常工作中您每天都要使用supplier表許多次,而且您的英文打字的水平并不高。在這種情形下,您就可以借助于同義詞(Synonym)來幫助您提高生產(chǎn)力。怎樣創(chuàng)建同義詞(Synonym)現(xiàn)在您就可以使用如下的CREATE SYNONYM語句(例15-38)為表supplier建了一個同義詞(別名)s。SQL CREATE SYNONYM s FOR supplier;同義詞已創(chuàng)建。現(xiàn)在您就可以把同義詞(別名)s當成supplier來使用。您可以使用如下的查尋語句來驗證這一點。SQL SELECT * FROM s;S_CODE SNAME CONTACT PHONE FAX - - - - -2000 仙客來百貨 張根發(fā) 4444944 44448442010 心太軟小商品 石鐵心 1741741食為天餐具 金元寶 1671671 16716742032 食為先餐具 陸合彩 1681684 1681684那您可能會問,您怎樣才能知道您到底擁有哪些同義詞(Synonym)呢?還記得數(shù)據(jù)字典user_objects嗎?既然同義詞(Synonym)是對象,它們在這個數(shù)據(jù)字典中就一定有記載。因此您可以使用如下的查尋語句(例 15-41)從數(shù)據(jù)字典user_objects中得到您所擁有的全部同義詞(Synonym)的信息。當然為了使SQL*PLUS的顯示輸出更加清晰您 應該先使用如下的SQL*PLUS格式化命令SQL col object_name format a20SQL SELECT object_name, object_type, created, status FROM user_objectsWHERE object_type LIKE SYN%;OBJECT_NAME OBJECT_TYPE CREATED STATUS- - - -S SYNONYM 28-4月 -03 VALID 顯示的結果表明:在您的模式(用戶)下只有一個同義詞(Synonym),那就是您剛剛建立的同義詞(Synonym)s。但是顯示的結果并沒有告訴您這個同義詞(Synonym)到底是基于那個表的及表的主人是誰。如果您有一個這樣同義詞(Synonym)時, 這方面的信息也許就顯得特別重要了。您可以使用如下的查尋語句從數(shù)據(jù)字典user_synonyms中得到這方面的信息。當然為了使 SQL*PLUS的顯示輸出更加清晰您應該先使用如下的SQL*PLUS格式化命令SQL col table_owner for a12SQL col table_name for a12SQL SELECT synonym_name, table_owner, table_name FROM user_synonyms;SYNONYM_NAME TABLE_OWNER TABLE_NAME- - -S SCOTT SUPPLIER 顯示的結果表明:在您的模式(用戶)下只有一個同義詞(Synonym),那就是您剛剛建立的同義詞(Synonym)s。該同義詞(Synonym)是基于表supplier,而這個表的主人是SCOTT。創(chuàng)建同義詞(Synonym)的語句格式如下:CREATE PUBLIC SYNONYM 同義詞的名字FOR 對象名;其中: PUBLIC: 系統(tǒng)中所有的用戶都可以訪問所創(chuàng)建的同義詞 同義詞的名字: 所創(chuàng)建的同義詞的名字 對象名: 創(chuàng)建的同義詞所基于的對象名在創(chuàng)建同義詞時要注意的事項: 所基于的對象不能包含在任何軟件包中 一個私有的同義詞不能與任何該用戶下的其它對象重名您剛剛創(chuàng)建的同義詞(Synonym)s是一個私有的同義詞,即只能在您的用戶(SCOTT)下直接引用,如果其它用戶引用它就必需冠以用戶名.(既 scott.s的方式引用)。這樣作很不方便。如果您所建的表supplier是一個所有用戶共享并經(jīng)常使用的表,您應該怎樣處理這一問題呢?創(chuàng)建公用同義詞(Synonym)您可以為supplier表創(chuàng)建一個公用同義詞(Synonym)。為了演示方便,您應該從當前的SCOTT用戶切換到另一個用戶下,如SYSTEM。您可以使用如下的SQL*PLUS命令(例15-44)來完成用戶的切換。SQL CONNECT SYSTEM/MANAGER已連接。 現(xiàn)在您如果使用如下的查尋語句,您是不會得到您想要的信息的。SQL SELECT * FROM s;結果FROM s * ERROR 位于第 2 行: ORA-00942: 表或視圖不存在您如果再使用如下的查尋語句,您也同樣不會得到您想要的信息的。SQL SELECT * FROM supplier;結果FROM supplier * ERROR 位于第 2 行: ORA-00942: 表或視圖不存在如果您在同義詞(Synonym)s之前冠以用戶名.(scott.),您就可以得到您所需要的信息了。如下面的查尋語句SQL SELECT * FROM scott.s;結果S_CODE SNAME CONTACT PHONE FAX - - - - -2000 仙客來百貨 張根發(fā) 4444944 44448442010 心太軟小商品 石鐵心 1741741食為天餐具 金元寶 1671671 16716742032 食為先餐具 陸合彩 1681684 1681684由于其它用戶在引用這一同義詞(Synonym)s時必須冠以您的用戶名(.).,這樣很不方便,而且也容易產(chǎn)生輸入錯誤,所以您可以使用如下的DDL語句為scott用戶下的supplier建立一個公用的同義詞(Synonym)ss。SQL CREATE PUBLIC SYNONYM ss FOR scott.supplier;同義詞已創(chuàng)建?,F(xiàn)在您就可以利用您剛剛創(chuàng)建的公用的同義詞(Synonym)ss來獲得您所希望得到的信息。您可以使用如下的查尋語句SQL SELECT * FROM ss;S_CODE SNAME CONTACT PHONE FAX - - - - -2000 仙客來百貨 張根發(fā) 4444944 44448442010 心太軟小商品 石鐵心 1741741食為天餐具 金元寶 1671671 16716742032 食為先餐具 陸合彩 1681684 1681684您也可能會問,其它用戶是否也可以使用同樣的方法訪問同義詞(Synonym)ss。答案是肯定的。如果您還有疑問的話,您可以試著以如下的SQL*PLUS命令(例15-50)以SYS用戶登錄進入ORACLE數(shù)據(jù)庫。SQL CONNECT SYS/ORACLE AS SYSDBA;已連接。 現(xiàn)在您就可以利用公共同義詞(Synonym)ss來獲得您所希望得到的信息。您可以使用如下的查尋語句SQL SELECT * FROM ss;S_CODE SNAME CONTACT PHONE FAX - - - - -2000 仙客來百貨 張根發(fā) 4444944 44448442010 心太軟小商品 石鐵心 1741741食為天餐具 金元寶 1671671 16716742032 食為先餐具 陸合彩 1681684 1681684ORACLE并沒有提供修改同義詞(Synonym)的命令。如果您要修改某一同義詞(Synonym)的話,您要先把它刪除掉,之后再重新建立這個同義詞(Synonym)。刪除同義詞(Synonym)如果經(jīng)過了一段時間,您發(fā)現(xiàn)同義詞(Synonym)s已經(jīng)沒什么用處了,您就可以使用如下的DDL語句將它刪除掉。不過在這之前您可能得先使用如下的SQL*PLUS命令重新注冊到SCOTT用戶下。SQL CONNECT SCOTT/TIGER已連接。 SQL DROP SYNONYM s;同義詞已丟棄。雖然結果已經(jīng)顯示:“同義詞已丟棄?!?,但是為了謹慎起見,您還是應該使用如下的查尋語句查看一下數(shù)據(jù)字典user_objects。SQL SELECT object_name, object_type, created, statusFROM user_objects WHERE object_t
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 暑期教師培訓學習計劃
- 2025年度家庭裝修石材加工及安裝服務合同范本
- 專業(yè)性合同范本
- 辦公裝飾合同范本
- 買賣攤位合同范本
- 2025年度生態(tài)農(nóng)業(yè)項目土地流轉合作合同
- 公司家具購買合同范本
- 會議營銷分成合同范本
- 關于解除兼職合同范本
- 法律盡職調查報告模板
- 胸腔積液護理查房-范本模板
- 水土保持方案中沉沙池的布設技術
- 安全生產(chǎn)技術規(guī)范 第25部分:城鎮(zhèn)天然氣經(jīng)營企業(yè)DB50-T 867.25-2021
- 現(xiàn)代企業(yè)管理 (全套完整課件)
- 走進本土項目化設計-讀《PBL項目化學習設計》有感
- 《網(wǎng)店運營與管理》整本書電子教案全套教學教案
- 教師信息技術能力提升培訓課件希沃的課件
- 高端公寓住宅項目營銷策劃方案(項目定位 發(fā)展建議)
- 執(zhí)業(yè)獸醫(yī)師聘用協(xié)議(合同)書
- 第1本書出體旅程journeys out of the body精教版2003版
- 2022年肝動脈化療栓塞術(TACE)
評論
0/150
提交評論