【问题标题】:Executing oracle store procedure using entity framework 5使用实体框架 5 执行 oracle 存储过程
【发布时间】:2015-06-05 19:14:42
【问题描述】:

存储过程是

create or replace PROCEDURE GETCORPORATEACTION(
RECORD_DATE IN date,
prc out sys_refcursor
)
AS
BEGIN
OPEN prc FOR SELECT *
FROM HR.CORPORATEACTION
where RECORDDATE = RECORD_DATE;
END;

使用 EF 调用 SP:

var CorporateActions = db.GETCORPORATEACTION(recordDate);

错误是 Message = "ORA-06550:第 1 行,第 8 列:\nPLS-00306:错误 调用参数的数量或类型 'GETCORPORATEACTION'\nORA-06550:第 1 行,第 8 列:\nPL/SQL:语句 忽略”

请任何人建议我如何摆脱这个问题。在此先感谢。

【问题讨论】:

  • 你的过程有两个参数(RECORD_DATEpcr),但你只用一个参数调用它:recordDate - 添加第二个参数和... Bazinga

标签: oracle entity-framework-5


【解决方案1】:

有几个问题:

  1. 被调用的过程有两个参数,但只提供了一个。应在调用中给出第二个参数的变量。
  2. 这是一个被调用的过程。过程不返回值,但您已将调用编码为好像正在调用函数一样。

电话应该是这样的

db.GETCORPORATEACTION(recordDate, CorporateActions);

【讨论】:

    猜你喜欢
    • 2013-10-31
    • 2013-03-19
    • 2016-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多