首页 > 解决方案 > 如何在 Anorm 中调用具有 IN 和 OUT 参数的“程序”

问题描述

在我的 Play (Scala) 应用程序中,我需要调用具有 IN 和 OUT 参数的过程。在任何地方都找不到任何示例!我正在使用 Play 2.5x(数据库是 Oracle)。

标签: scalaanorm

解决方案


似乎没有使用 Anorm 访问存储过程的 OUT 参数的机制。另一方面,可以直接使用连接对象,并且可以使用 Java 库调用存储过程。请参考以下示例代码:

dbch.dbprod.withConnection { implicit connection =>
    val cs: CallableStatement = connection.prepareCall("{call MY_STORED_PROC(?)}")
    cs.registerOutParameter(1, Types.VARCHAR)
    cs.execute()
    val result = cs.getString(1)
    ....
}

另请参阅链接:https ://docs.oracle.com/javase/tutorial/jdbc/basics/storedprocedures.html 。

感谢 Play gitter 频道提供的提示。


推荐阅读