[討論] Oracle DB Link 會ora-00904

看板Database (資料庫)作者 (chings22)時間5年前 (2019/05/15 03:37), 5年前編輯推噓3(304)
留言7則, 2人參與, 5年前最新討論串1/1
標題太長,再寫一次 Oracle DB Link 會ora-00904 invalid identifier 有2個DB :DB1, DB2 DB1-->DB2 透過 DB_LINK連到DB2的owner2 在DB2上 create synonym owner2.table_a for owner1.table_a; DB2上的owner2.table_a是synonym DB2上的owner1.table_a是table 在DB1單獨執行會過 select a1,a2 from table_a@db_link where a1=xxx; 若改成pl/sql ==> begin select a1,a2 from table_a@db_link where a1=xxx; end; 則有時會出現PL/SQL: ORA-00904: a1: invalid identifier 會發生這問題的時間大約都是,memory不足了 目前知道的解法是flush shared pool 請問 1.有其它解法嗎? 2.現在被迫每天清晨設schedule flush share pool, 這樣好嗎? PS:台灣有oracle論壇嗎? 我知道有ITPub,但那是簡體的 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.156.194 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1557862639.A.09D.html

05/15 16:34, 5年前 , 1F
定義dblink的時候有沒有加public﹖
05/15 16:34, 1F
有,這程式run 10多年了,最近突然有問題 單獨在client tool 執行ok,有begin end一陣子後就不行了

05/15 18:54, 5年前 , 2F
試一下加入別名select s.a1 .... from table_a@db_link s
05/15 18:54, 2F

05/15 18:55, 5年前 , 3F
2.沒有什問題,只是增加硬解和重新cache而已。ITPUB個人認
05/15 18:55, 3F

05/15 18:56, 5年前 , 4F
為是最好的中文網站了,不然就去oracle官方網站問了。要發
05/15 18:56, 4F

05/15 18:57, 5年前 , 5F
問題就用word轉成簡體的就行了,只是要註冊現有一些麻煩
05/15 18:57, 5F
前面加owner也不行, IT Pub很多年前有註冊過,後來公司有封鎖該網址, 而我也多年未登入,已經不會想進去了 轉成簡體,有些用語若是沒轉好,被看出是台灣人,反而痲煩 大概知道問題了,還沒確定是否如此. 不知有沒有人遇過? ※ 編輯: chings22 (36.226.156.194), 05/15/2019 22:33:34

05/18 10:34, 5年前 , 6F
是加別名,不是owner。另外itpub没那麼政治,我用了很多年
05/18 10:34, 6F

05/18 10:34, 5年前 , 7F
05/18 10:34, 7F
問題是8i跟10g的synonym在一起做 sql join, 這2個synonym都是定義到到8i的同一個table 在MOS可看到10g的DB有類似的synonym bug 把程式改回只有一個synonym,也是一樣error, 最後還要搭配restart DB一次才好 我上面寫的pl/sql 是在ora-00904問題發生後,只select一個table也會錯 ※ 編輯: chings22 (118.166.210.185), 05/30/2019 23:01:22
文章代碼(AID): #1SsnZl2T (Database)
文章代碼(AID): #1SsnZl2T (Database)