使用 Nhibernate 的不带参数的 Oracle 存储过程

标签 oracle nhibernate stored-procedures

如何在 .net 代码中访问 Oracle 存储过程的 out 参数值 - 通过 Nhibernate 调用 Oracle 存储过程?

示例工作代码会有所帮助。

最佳答案

您必须使用最新版本的 NHibernate (2.1.2)。

<sql-query name="ReturnSomethig" callable="true">
   <return class="Somethig" />
   { call ReturnSomethig(:someParameter) }
</sql-query>

Oracle 存储过程需要将第一个参数作为 out sys_refcursor 参数。

您可以像这样调用命名查询:

IQuery query = currentSession.GetNamedQuery("ReturnSomethig");
query.SetInt64("someParameter", someParameter);
var somethig = query.List<Somethig>();

它会起作用的。

关于使用 Nhibernate 的不带参数的 Oracle 存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1804879/

相关文章:

sql - 获取 SQL XML 标记以显示 NULL 值

.net - ORM 工具或手动将对象构建到关系映射层

c# - NHibernate 4 升级的重大变化

postgresql - 如何编写不返回任何内容的 postgres 存储过程?

java - Spring存储过程传递数组

Php 尝试通过 PDO 连接到 Oracle 11g - 未知错误

java - 触发Java进程检测满足特定条件的记录

sql-server - 我需要删除存储过程中声明的表变量吗?

sql - 列中的子字符串

nhibernate - 我们如何使用 hibernate criteria API 将列排序为 int?