ORACLE 建立同義詞是在哪個使用者

2025-07-16 02:10:20 字數 3884 閱讀 5774

1樓:網友

只要使用者有建立同義詞的許可權,那他就可以為任何物件建立同義詞。

使用b使用者建立的話不需要再次授權,其他使用者建立的話需要再次授權。

2樓:海子

在b使用者下建立同義詞,也可以在系統使用者下建立全域性同義詞。

3樓:網友

在b使用者下建立同義詞。

oracle中system建立的公有同義詞,為什麼有的使用者不能訪問?

4樓:網友

這種情況應該是授予許可權的問題造成的。

1、表的所有使用者要給表授予公共許可權。例如:授予查詢許可權「grant select on 表 to public」;

2、建立公有同義詞不要忘了加上public選項,如:create public sysnonym。

同義詞是資料庫方案物件的乙個別名,經常用於簡化物件訪問和提高物件訪問的安全性。oracle的同義詞有兩種型別:公有同義詞與私有同義詞。

1)公有同義詞由乙個特殊的使用者組public所擁有。

2)私有同義詞是由建立他的使用者所有。

建立同義詞的語法:create [public] synonym 同義詞名稱 for [username.]objectname

刪除同義詞的語法:drop [public] synonym 同義詞名稱。

檢視所有同義詞:select * from dba_synonyms

oracle中system建立的公有同義詞,為什麼有的使用者不能訪問

5樓:網友

1、首先通過管理員賬戶system建立乙個公共同義詞create or replace public synonym (表的**,如c) for (將要替代的表);

2、然後繼續在管理員賬戶下授權上面的 c(表的**)grant select on c to public;

3、這樣所有使用者都可以檢視此表。

6樓:隨o天

1、表的所有使用者要給表授予公共許可權。例如:授予查詢許可權。

grant select on 表 to public;

2、建立公有同義詞不要忘了加上public選項,如:create public sysnonym ..

oracle能不能給"使用者"建立同義詞而不是"表"

7樓:網友

有2種辦法:

其中之一就是你說的同義詞,在你的使用者中建立到a的同義詞,當使用者a換成使用者b的時候,修改同義詞即可。

之二,就是用databaselink,**中寫成表名@dblink,檢視名@dblink 等等。

這樣當使用者a換成使用者b時,只要修改dblink的使用者a到使用者b 即可,修改的量較小。

8樓:旋風小翔

使用者級是不能用同義詞的,所以你要前期就規劃好使用者,還有使用者名稱是不能像表名能隨意修改的。

oracle同義詞是什麼意思?

9樓:

相當於alias(別名),比如把在user2中建乙個同義詞table1

create synonym table1 for ;

這樣當你在user2中查select * from table1時就相當於查select * from ;

優點自己總結吧。

例如:在oracle中對使用者的管理是使用許可權的方式來管理的,也就是說,如果我們想使用資料庫,我們就必須得有許可權,但是如果是別人將許可權授予了我們,我們也是能對資料庫進行操作的,但是我們必須要已授權的表的名稱前鍵入該表所有者的名稱,所以這就是比較麻煩的,遇到這種情況,我們該怎麼辦呢?建立個同義詞吧!

這樣我們就可以直接使用同義詞來使用表了。

oracle 使用者建立了同義詞後,提示查不到表

10樓:

用a使用者執行下。

select * from user_synonyms

看看建好的到底是什麼名字。

11樓:網友

你建立的是啥型別同義詞? 公用還是私有?

oracle中什麼是同義詞?什麼是public 的同義詞?

12樓:我tm不管

1、私有同義詞。

只能被當前使用者訪問。

2、公有同義詞。

可被所有的資料庫使用者訪問。

建立同義詞語法:

create [or replace] [public]synonym 同義詞名稱。

for [使用者名稱。]物件名;

註釋:中表示可寫、或不寫;[or replace]表示如果已經有了你要建立的同義詞就取代/替換原有的同義詞;[public]表示是否把同義詞公有。

13樓:網友

alias(別名),比如把在user2中建乙個同義詞table1

create synonym table1 for ;

這樣當你在user2中查select * from table1時就相當於查select * from ;

優點自己總結吧。

例如:在oracle中對使用者的管理是使用許可權的方式來管理的,也就是說,如果我們想使用資料庫,我們就必須得有許可權,但是如果是別人將許可權授予了我們,我們也是能對資料庫進行操作的,但是我們必須要已授權的表的名稱前鍵入該表所有者的名稱,所以這就是比較麻煩的,遇到這種情況,我們該怎麼辦呢?建立個同義詞吧!

這樣我們就可以直接使用同義詞來使用表了。

對另乙個資料物件而言同義詞是乙個別名。public同義詞是針對所有使用者的,相對而言private同義詞則只針對物件擁有者或被授予許可權的賬戶。在本地資料庫中同義詞可以表示表、檢視、序列、程式、函式或包等資料物件,也可以通過鏈結表示另乙個資料庫的物件。

建立同義詞語法如下:

create [public] synonym synonym_name for [schema.] object[@db_link];

例:create public synonym policies for ;

create synonym plan_table for ;

14樓:網友

假設oracle有以下兩個使用者: admin , visitor

我們在admin下建立了 testtable 這個表,並且對visitor使用者賦權。

然後我們用visitor登陸 : 查詢這個表的時候我們一定需要這樣寫。

select * from

如果直接寫 select * from testtable oracle會報錯說表不存在。

但是我們可以在visitor裡建立[私有同義詞] 讓 testtable =

這樣在visitor下就可以直接輸入 select * from testtable進行查詢。

但是如果使用者很多的情況下會覺得很麻煩,因為每個使用者都需要加[私有同義詞] testtable=

所以就出現了 [公有同義詞]

直接在admin使用者下建立公有同義詞 testtable = testtable

這樣做好後,所有的使用者都可以直接使用。

select * from testtable 進行訪問而並不需要加字首,也不用再加[私有同義詞]了。

15樓:名要長長長長長

你寫sql語句是不是用過別名呢。比如。

select * from table a,table2 b where ;

同義詞跟別名差不多。別名只能在當前的查詢語句中使用,同義詞卻是乙個物件了。以後可以一直使用。

可以對錶,檢視,序列和其他物件建立同義詞。

在oracle中可以檢視資料字典user_synonyms檢視同義詞相關資訊。

聞名的同義詞是寧靜的同義詞是激動的同義詞是鼓舞的同義詞是叮嚀的同義詞是()

聞名近義詞 知名 出名 著名 著名 有名 馳名 寧靜近義詞 靜謐 寂靜 寂寥 寂然 安靜 安樂 安寧 安定 安閒 安祥 安謐 沉靜 沉寂 平靜 僻靜 平寧 清靜 太平 穩定 恬靜 幽靜 和平 激動近義詞 激昂 鼓吹 鼓舞 鼓勵 促進 推動 鼓動 興奮 感動 衝動 煽動鼓舞近義詞 激勵 激勸 激發 激...

won的同義詞是要有詞哦,won的同義詞是,要有3個詞哦

won是win的過去式 win 1獲得,成功,達到爭取,gain vt獲得,贏得。2增加。4經過努力到達vi1獲利,受益 版。2增進健康。3 鐘錶 走快 prevail vi1獲勝,成功,奏效。2流行,盛行succeed vt接替,接續,繼承,接在.後面vi1成功,辦妥,獲權得成效,發跡 2繼續,接...

景象的同義詞是什麼,circle的同義詞是什麼

景象 j ng xi ng 1 指景色 情景。鄭谷 中年 詩 漠漠秦雲澹澹天,新年景象入中年。2 指狀況 氣象。3 指跡象。漢書 武帝紀 著見景象,屑然如有聞。1基本資訊 詞目 景象 拼音 j ng xi ng 基本解釋 1.view 情景 氣象從取景窗看到的景象2.omen 跡象 徵兆 2詳細解釋...