0
是否有可能在oracle中使用DBLINK調用函數?我打電話這樣的功能,並收到錯誤 - ORA-00904: 「MC」 「GET_REFTYPES」:無效的標識符如何在oracle中使用dblink調用函數?
select column_value from table([email protected]_MAIN_MCNAV(param1, param2, param3)));
功能代碼
CREATE OR REPLACE FUNCTION "MC"."Get_REFTYPES"(
param1 IN VARCHAR,
param2 IN NUMBER,
param3 IN DATE DEFAULT SYSDATE
)
RETURN RefType_T PIPELINED IS
CURSOR cur_st (
cur_param1 VARCHAR,
cur_param2 NUMBER,
cur_param3 DATE
) IS
select
TypeID
FROM ......
WHERE......... ;
t_st Types_T; -- Table variable to store return values
BEGIN
OPEN cur_st(param1, param2 , param3);
FETCH cur_st BULK COLLECT INTO t_st;
CLOSE cur_st;
FOR i IN 1..t_st.COUNT LOOP
PIPE ROW(t_st(i));
END LOOP;
RETURN;
END;
謝謝!
是的......但我不明白在這個select語句中如何使用這個函數。 「從桌子上......」在哪裏做的功能是什麼,有,按組還是選擇?你期望這個函數返回什麼結果,查詢如何使用它?作爲限制,展示什麼?另外,我看到打開('s和3關閉)' – xQbert
'mc'是模式還是包?如果它是一個模式,數據庫鏈接連接的用戶是什麼,如果不是'mc',那麼這個用戶是否擁有該功能的權限?函數返回什麼數據類型 - 接下來可能會遇到[此問題](http://stackoverflow.com/a/7246141/266304)。實際上,這可能是這個問題的重複... –
@Alex Poole mc是一個模式,我確實可以完全訪問它和函數,因爲第二個問題我可能會得到錯誤。該函數看起來像這樣 - – Kaur