3

我想知道是否可以使用等效的 SubSonic 命令进行以下 SQL 更新查询:

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

我找不到合适的方法来使用 Setting 对象引用同一字段。

对此的任何帮助将不胜感激。

问候,

费尔南多

4

3 回答 3

2

您可以使用 subsonic 的QueryCommand对象执行此查询。

您可以在这里找到类似的示例链接链接

于 2010-01-08T04:59:38.910 回答
1

是的 - 您可以使用“UpdateExpression” - 这是您使用“简单”查询工具传入的字符串值。我面前没有代码或示例 - 它可能是“SetExpression”,但它允许您使用您在此处输入的字符串进行更新。

于 2010-01-08T07:22:48.837 回答
1

我使用您在 SetExpression() 上所说的话进行了测试,但不知何故我不相信我使用它是正确的....它有效,但感觉(和看起来)有点有趣你知道吗?

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

正如我所说,更新有效,但我不确定这是否是预期的方式,如果是(或者即使不是),那么我如何使用参数而不是硬编码值在表达式中。

于 2010-01-09T01:44:02.267 回答