Saya menggunakan sintaks berikut dan berhasil untuk saya.
EXECUTE (Query, Parameters) AT LinkedServerName
Contoh:
EXECUTE ( 'BEGIN ? := Package.MyFunction(?,?); END;', @ReturnValue, @InputPara, @OutputPara OUTPUT ) AT LinkedServerName
Poin Penting:
- Jangan lupa sintaks BEGIN dan END saat memanggil fungsi
- Jangan lupa titik koma di akhir "END**;**"
- Untuk menggunakan sintaks di atas, Anda perlu mengaktifkan RPC untuk server tertaut
- Oracle tidak akan menganggap panggilan tersebut sebagai panggilan fungsi kecuali Anda menerima output dalam sebuah variabel