我正在尝试调用oracle中的一个存储函数,我确信它存在并且我有权访问它,我可以从sql developer调用它,但是当我尝试使用jdbctemplate从java springboot调用它时,它会说它不是一个有效的函数或过程。
我在sqldeveloper和java connection中使用同一个用户,他也是包的所有者。
具体错误是:
oracle.jdbc.OracleDatabaseException: ORA-06576: Not a valid function or procedure name.
我这样称呼它:
User inspector = jdbcTemplate.queryForObject("CALL PKG_USUARIO.INICIAR_INSPECTOR(1, '123456')", newUserMapper());
我搜索了这个问题,但没有解决它在这种情况下,感谢帮助!,谢谢:)
1条答案
按热度按时间vnjpjtjt1#
检查:
您正在连接到正确的数据库服务器。
您正在连接到服务器上的正确数据库示例。
您正在以正确的用户身份进行连接。
您有正确的过程名称(并且该过程没有被赋予一个非标准名称,该名称需要在标识符周围加上双引号,例如
PKG_USUARIO."inicar_inspector"
.)您作为连接的用户具有执行该过程的权限。
该过程已成功编译。
过程实际上是一个过程而不是一个函数,它需要有一个返回值并使用以下方法调用:
或