单个NHibernate HQL语句中的多个更新

时间:2015-07-31 16:20:19

标签: c# nhibernate hql nhibernate-3

我想用NHibernate HQL一次执行以下两个语句:

update CustomFieldValue set Value = :newVal where Key = 1 and Value = :oldVal;
update CustomFieldValue set Value = :newVal where Key = 1 and Value = :oldVal;

我创建了一个字符串并尝试使用

更新它
var query = this.Session.CreateQuery(hql);
// ... set parameters
query.ExecuteUpdate();

但我总是得到一个QuerySyntaxException。 NHibernate 3.3.1是不是可能,或者我做错了什么?

1 个答案:

答案 0 :(得分:0)

我正在努力了解您为什么要这样做?是我丢失了它还是要提交给数据库的命令相同?

我在这里完全是猜测,但是您是否真的要尝试做类似的事情:

update CustomFieldValue set Value = :newVal1 where Key = 1 and Value = :oldVal1;
update CustomFieldValue set Value = :newVal2 where Key = 1 and Value = :oldVal2;

在我看来,这行得通吗?