我想在 C#/.NET 中使用以下存储过程:
CREATE OR REPLACE
procedure contact_return(
v_urn IN VARCHAR2,
p_cursor OUT SYS_REFCURSOR )
AS
sql_statement VARCHAR2(4000) := '
SELECT URN,
FIRSTNAME,
LASTNAME,
TITLE,
MOBILE,
WORK,
EMAIL
FROM CONTACT
WHERE urn = NVL(:1,v_contact_urn)';
BEGIN
OPEN p_cursor FOR sql_statement USING v_urn;
使用此代码,我收到错误消息:PLS-00201:必须声明标识符“CONTACT_RETURN”
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "contact_return";
cmd.Parameters.Add("v_urn", OracleDbType.Int64).Value = null;
cmd.Parameters.Add("p_cursor", OracleDbType.RefCursor).Direction = ParameterDirection.Output;
据我所知,我已经正确声明了存储过程('contact_return'),所以无法弄清楚为什么会出现这个错误。
任何帮助将不胜感激,谢谢:)