I am trying to run an Oracle stored procedure using linked server on SQL Server.
Stored procedure is crs.uf
and it accepts a parameter p_date
.
From SQL Server, I am executing it like this:
EXECUTE ('begin crs.uf("2016-02-26"); end;') AT LServer
I'm getting this error:
OLE DB provider "OraOLEDB.Oracle" for linked server "LServer" returned message "ORA-06550: line 1, column 47:
PLS-00201: identifier '2016-06-26' must be declared
ORA-06550: line 1, column 7:PL/SQL: Statement ignored".
Msg 7215, Level 17, State 1, Line 2
Could not execute statement on remote server 'LServer'.
What am I doing wrong? How to successfully run this stored procedure?
Try
DECLARE @dateval DATETIME
EXECUTE ('begin crs.uf(?); end;',@dateval) AT LServer