休眠参数 [英] Nhibernate parameters
本文介绍了休眠参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
对此感到非常沮丧-这确实是一个非常简单的问题:-/
我使用NHibernate执行一条SQL语句,该语句首先插入新行,然后根据第一次插入生成的ID在另一张表中插入行.
SQL可以正常工作:
Really frustrated with this one - and it really seems a very simple issue :-/
Im using NHibernate to execute a SQL statement that first inserts a new row, then inserts a row in a different table based on the id that the first insert generated.
The SQL for it works fine:
INSERT INTO messages(MessageSubject,MessageText,MessageSenderTribeID,MessageSentTime,MessageHasAttachments)
VALUES(''subject'', ''text'',204948, 2009, 0);
SET @last=LAST_INSERT_ID();
INSERT INTO messagelinks(MessageID,MessageReceiverNodeID,SendMethodID)
VALUES(@last, 204948,3);
SELECT * FROM messages WHERE Messages.MessageID = @last;
但是当我这样做时:
However when i do this:
var session = NHibernateHelper.GetCurrentSession();
IQuery query = session.CreateSQLQuery(that sql here).AddEntity(typeof(messages));
IList<messages> messageRes = query.List<messages>();
抛出错误,提示未设置所有命名参数?
我不需要任何命名参数或任何东西-只需要nhibernate执行sql.请帮忙,谢谢:)
It throws an error saying not all named parameters have been set?
I dont need any named parameters or anything - just need nhibernate to execute the sql. Please help, thanks :)
推荐答案
ok为什么您不将其设置为存储过程,然后将参数传递给它,确定它会解决' '没有设置参数'..
ok why dont you make it a stored procedure and then pass the parameters into it, Im sure it will resolve the problem with the ''no setting of parameters''..
这篇关于休眠参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文