oracle怎么查詢表的同義詞

oracle中,可以利用select語句配合“dba_synonyms”查詢表的所有同義詞,語法為“select * from dba_synonyms”;同義詞和視圖的功能類似,是一種映射關系,能夠節省大量的數據庫空間。

oracle怎么查詢表的同義詞

本教程操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。

oracle怎么查詢表的同義詞

Oracle的同義詞(synonyms)詳解

從字面上理解就是別名的意思,和視圖的功能類似。就是一種映射關系。

同義詞語法:CREATE

[PUBLIC]?SYNONYM?synonym?FOR?object;

查看所有同義詞:

select?*?from?dba_synonyms

oracle怎么查詢表的同義詞

同義詞擁有如下好處:節省大量的數據庫空間,對不同用戶的操作同一張表沒有多少差別;擴展的數據庫的使用范圍,能夠在不同的數據庫用戶之間實現無縫交互;同義詞可以創建在不同一個數據庫服務器上,通過網絡實現連接。

擴展知識:

1:獲取當前所有的同義詞表名:

select?table_name?from?user_synonyms

2:查詢所有同義詞表的所有者:

select?table_owner?from?user_synonyms

3:查詢當前同義詞表的所有者:

select?table_owner?from?user_synonyms?WHERE?table_name?='大寫表名'

4:查詢同義詞表的表數據:

select?*?from?大寫所有者名.大寫表名

5:查詢同義詞表的表結構基本信息(字段名稱,字段類型,字段長度等信息):

select?COLUMN_NAME,DATA_TYPE,DATA_LENGTH?from?dba_tab_columnswhere?table_name?='(大寫表名)'?AND?OWNER??=?(大寫所=屬名)?order?by?COLUMN_NAME';

6:查詢oracle同義詞表的主鍵信息:

select?a.column_name, ????????????????????DECODE(A.column_name,?b.column_name,?1,?0)?pk ???????????????from?all_tab_columns?a, ????????????????????(select?column_name ???????????????????????from?all_constraints?c,?all_cons_columns?col ??????????????????????where?c.constraint_name?=?col.constraint_name ????????????????????????and?c.constraint_type?=?'P' ????????????????????????and?c.table_name?=??'大寫表名'?)?b ??????????????where?table_name?='大寫表名' ????????????????and?a.column_name?=?b.column_name(+)?and??DECODE(A.column_name,?b.column_name,?1,?0)?=?1

推薦教程:《Oracle視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊9 分享