Несколько обновлений в одном выражении NHibernate HQL

Я хотел бы выполнить следующие два оператора одновременно с 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 ответ

Я изо всех сил пытаюсь понять, почему вы хотели бы сделать это? Я пропускаю его или команды, которые вы хотите отправить в базу данных, идентичны?

Я полностью догадываюсь здесь, но вы действительно пытаетесь сделать что-то вроде:

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

Мне кажется, что будет работать?

Другие вопросы по тегам