【发布时间】:2016-10-25 11:41:42
【问题描述】:
从 C# 执行 oracle 函数时,我们收到此错误。 请帮忙解决。
ORA-06550:第 1 行,第 15 列:
PLS-00306:调用中的参数数量或类型错误 'LIST_WITHOUT_DUBLICATES'
ORA-06550:第 1 行,第 7 列:
PL/SQL:语句被忽略
我的 C# 代码
comm.Connection = conn;
comm.CommandText = "LIVE.list_without_dublicates";
comm.CommandType = CommandType.StoredProcedure;
comm.Parameters.Add("p_str", to_list);
comm.Parameters.Add("p_sep", ",");
comm.Parameters.Add("result", OracleDbType.Varchar2);
comm.Parameters["result"].Direction = ParameterDirection.ReturnValue;
comm.ExecuteNonQuery();
函数签名
LIVE.list_without_dublicates(
p_str IN VARCHAR2,
p_sep IN VARCHAR2 DEFAULT ',')
RETURN VARCHAR2
【问题讨论】:
-
函数名真的是
list_without_dublicates而不是list_without_duplicates吗? -
@GordonLinoff 仅限
list_without_dublicates -
你也可以发布你的函数体吗?
-
你的 c# 中的 'to_list' 是什么?
-
你正在添加参数结果
comm.Parameters.Add("result", OracleDbType.Varchar2);这不是函数的参数。