gpt4 book ai didi

java - 如何从JDBC中的存储过程中获取输出

转载 作者:行者123 更新时间:2023-11-29 01:36:18 26 4
gpt4 key购买 nike

我正在尝试使用 JDBC,并且我制作了一个存储过程。我想调用存储过程,然后使用Java中的System.out.println输出数据输出。我怎么做?

下面是我原来的存储过程。我想让它工作,但从阅读中我不知道这是否可能

DELIMITER $$
CREATE
PROCEDURE CountMembers()
BEGIN
SELECT COUNT(MEMBER_ID) FROM Members;
END $$
DELIMITER ;

这是我将其更改为的内容,因为它似乎得到了输出,这可能是必须要做的。

DELIMITER $$
CREATE
PROCEDURE CountMembers(OUT m_count VARCHAR(30))
BEGIN
SELECT COUNT(MEMBER_ID) INTO m_count FROM Members;
END $$
DELIMITER ;

我知道要运行它,我必须创建一个可调用的语句,然后我看到了 String userCount = callableStatement.getString(1); 可以在哪里获得输出。基本上我已经阅读了很多信息,但我很难将它们放在一起。

最佳答案

首先,请注意 COUNT(MEMBER_ID) 将返回一个整数值,但您将其选择到一个 VARCHAR 变量中。

接下来,我想你正在寻找类似的东西:

    CallableStatement stm = connection.prepareCall("{ call CountMembers(?) }");
stm.registerOutParameter(1, Types.VARCHAR);
stm.execute();
String m_count = stm.getString(1);
stm.close();

关于java - 如何从JDBC中的存储过程中获取输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42602599/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com