【问题标题】:How to Solve parameter error in Strored Procedure call in Spring Boot?如何解决Spring Boot中存储过程调用中的参数错误?
【发布时间】:2021-08-15 22:52:11
【问题描述】:

我的数据库中有一个这样的存储过程:

DELIMITER //
CREATE PROCEDURE Getit()
BEGIN
SELECT title 
FROM course 
WHERE description="just a course";
END //

现在在 spring boot 应用程序中我这样调用这个方法:

public interface coursesdao extends JpaRepository<course, Integer>{
    
    @Procedure
    String Getit();
}

后来:

public String getprocedure() {
        return cdao.Getit();
    }

我收到这样的错误:

Parameter number 1 is not an OUT parameter.

但是我没有参数可以传递给程序。我该如何解决?

【问题讨论】:

  • 您的存储过程返回一个结果集,但您将其称为函数。它没有返回值,结果集通过不同的方法传递给调用应用程序
  • 得到了解决方案,无论如何感谢您的提示

标签: java mysql spring-boot stored-procedures spring-data-jpa


【解决方案1】:

找到解决方案,现在可以使用了!

像这样稍微调整一下程序:

DELIMITER //
CREATE PROCEDURE Getitout(OUT output VARCHAR(50))
BEGIN
SELECT title into output
FROM course 
WHERE description="just a course";
END //

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-25
    • 2019-03-23
    • 2021-10-06
    • 2018-06-30
    • 2021-10-12
    • 2012-01-28
    相关资源
    最近更新 更多