阿強
Lv 7
阿強 發問時間: 電腦與網際網路電腦網路 · 1 0 年前

Oracle的@與‧的差別在哪裡?

請問假設在Oracle中有一個Schema為SCH1中有一個資料表為TAB1。

我要做一個視表(VIEW),使用下面兩種方法都可以

方法一:SELECT * FROM SHC1.TAB1

方法二:SELECT * FROM TAB1@SCH1

這用‧與@的差別在哪裡?有時候方法一可以建起VIEW,方法二不可以。有時方法二可以,方法一就不可以?

這用‧與@的差別到底在哪裡?

1 個解答

評分
  • 悅文
    Lv 6
    1 0 年前
    最佳解答

    在 oracle sql 語法中

    schema.object@dblink

    . 表示 前面是 schema,後面是 object

    @表示 前面是 object,後面是 dblink.

    object有 table,index,view,store procedure ..... 等.

    但在 view 中 object 只能用 table or view

    dblink 表示要跨資料庫.

    若你建 view 時有跨資料庫.

    則最好 用 sch1.tab1@sch1

    在 local 資料庫 建立 dblink -->sch1

    remote 資料庫 有 schema -->sch1 ,table ----> tab1

    記得授權給 dblink connect user

    方法一不行,是用在有跨資料庫時.

    方法二不行,是用在單一資料庫時,不可用 dblink.

    參考資料: my
還有問題?馬上發問,尋求解答。