【问题标题】:Failed to execute stored procedure from the JDBC code using mysql connection无法使用 mysql 连接从 JDBC 代码执行存储过程
【发布时间】:2011-03-04 10:04:15
【问题描述】:

我有一个数据库。我在它上面执行了一个存储过程。我写了一些 JDBC 代码来连接到这个数据库。当我从我的 JDBC 代码调用这个存储过程时,它会抛出 SQLException。

我发现一件有趣的事情是我有一个用户不是 root 用户。该用户拥有存储过程所在数据库的所有权限。

当我使用 root 用户时,我能够成功调用存储过程。但是对于另一个用户,我得到了 SQLexception。我无法找到为什么会这样。

当然,我希望这个用户(除了 root)必须成功调用这个存储过程。

提前致谢。

【问题讨论】:

  • 我认为你应该提供整个异常堆栈跟踪和存储过程。
  • 您确定用户有执行程序权限吗?如果不尝试 GRANT EXECUTE ON PROCEDURE mydb.myproc TO 'someuser'@'somehost';
  • 我建议将 JDBC 添加到您的标签中,我记得以前也无法从我的 JDBC 代码中调用 sprocs,不过我只记得这些

标签: mysql stored-procedures jdbc


【解决方案1】:

用户应该对mysql.procmysql.procs_priv 拥有SELECT 权限。

不知道有没有其他解决办法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-30
    • 2010-11-02
    • 2012-10-02
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多