我有一個存儲過程,它帶有兩個返回int的參數。nibernate調用mysql存儲過程
我mapping.hbm.xml
<sql-query name="CreateAttribute">
<query-param name="idAttrType" type="int"/>
<query-param name="idSystemUser" type="int"/>
call CreateAttribute :idAttrType,:idSystemUser
</sql-query>
C#使用
var t = session.GetNamedQuery("CreateAttribute");
t.SetInt32("idAttrType", 12);
t.SetInt32("idSystemUser",int.Parse(id));
var result = t.List();
然後我收到了如下因素:
[SQL:??叫CreateAttribute P0,P1] --- > MySql.Data.MySqlClient.MySqlException:你的SQL語法有錯誤;
有什麼建議嗎?
試了一下。現在我得到一個:PROCEDURE sampledb.CreateAttribute不存在 – Cos 2012-07-20 11:50:02
只是要清楚,我試圖替換的內聯SQL是:INSERT INTO Misc VALUES(CreateAttribute(12,$ userid),$ userid,'$ title',' $ details','$ startdate','$ enddate','$ isongoing','$ xml');「。顯然我會把這個語句分成2個部分,一個叫做程序,另一個叫插入 – Cos 2012-07-20 11:53:29
請請參閱編輯 – Rippo 2012-07-20 12:02:03