SubSonic эквивалент обновления SQL - PullRequest
3 голосов
/ 08 января 2010

Мне интересно, возможен ли следующий запрос на обновление SQL с использованием эквивалентных команд SubSonic:

UPDATE MYTABLE SET MYFIELD = MYFIELD + 3 WHERE ANOTHERFIELD = ANOTHERVALUE

Я не смог найти подходящий способ сделать ссылку на то же поле с объектом Setting.

Любая помощь по этому вопросу будет принята с благодарностью.

С уважением,

Fernando

Ответы [ 3 ]

2 голосов
/ 08 января 2010

Вы можете выполнить этот запрос, используя QueryCommand объект дозвукового.

Подобные образцы можно найти здесь ссылка и ссылка

1 голос
/ 09 января 2010

Я провел тест, используя то, что вы сказали в SetExpression (), но почему-то я не уверен, что я правильно его использую .... он работает, но кажется (и выглядит) довольно забавно, вы знаете?

int count = new Update(MyTable.Schema).SetExpression("MyField").EqualTo("MyField + 20")
.Where(....)

Как я уже сказал, обновление работало, но я не уверен, что это намеченный способ сделать это, и если это так (или даже если это не так), то как я могу использовать параметр вместо жесткого кодирование значения в выражении.

1 голос
/ 08 января 2010

Да - вы можете использовать «UpdateExpression» - это строковое значение, которое вы передаете с помощью «простого» инструмента запросов. У меня нет кода или образца передо мной - это может быть «SetExpression», но оно позволяет вам обновлять, используя строку, как вы ввели здесь.

...