簡體   English   中英

執行存儲過程並在Hibernate中獲取單輸出參數

[英]Execute a stored procedure and get single out parameter in Hibernate

假設我有一個簡單的MS SQL Server過程,該過程接受2個int參數並返回總和

CREATE PROC add_them 
    @param1 int,
    @param2 int,
    @result int OUTPUT
AS 
BEGIN   
    SET @result = @param1 + @param2;
END

我可以從Hibernate(版本4.3.1)調用此過程嗎?

到目前為止,我使用了session.createSQLQuery("exec add_them :param1, :param2")方法,稍后設置參數並使用query.list()執行它。

但這是行不通的,因為該過程不會返回一個集合,而只會返回一個out值。

那么,我可以叫這個程序嗎?

試試看

Query addItemQuery=session.createSQLQuery("exec add_them :param1, :param2");
addItemQuery.setInteger("param1", 1);
addItemQuery.setInteger("param2", 2);
objArrList=addItemQuery.list();

或者您可以嘗試以下方法:

Query addItemQuery=session.createSQLQuery("exec add_them :param1, :param2");
.SetParameter("param1", param1)
.SetParameter("param2", 2);
.list<int>();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM