休眠参数 [英] Nhibernate parameters

查看:105
本文介绍了休眠参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

对此感到非常沮丧-这确实是一个非常简单的问题:-/

我使用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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆