是否可以使用Simple.Data?
在Update查询中增加整数我的数据库是SQL Server,但我知道Simple.Data被设计为与数据库无关,所以这个查询可能在其他提供程序中不可用。
我想要生成的SQl查询看起来像这样:
UPDATE MyTable SET MyInt = MyInt + 1 WHERE Id = 123
目前我必须在Simple.Data中执行SELECT和UPDATE以实现相同的目的:
var result = db.MyTable.Find(db.MyTable.Id == 123);
result.MyInt++;
db.MyTable.UpdateById(Id: result.Id, MyInt: result.MyInt );
我想知道是否有办法复制上面的单个SQL语句。
答案 0 :(得分:1)
你可以这样做:
db.MyTable.UpdateById(Id: 123, MyInt: db.MyTable.MyInt + 1);
适用于SQL Server,应该适用于所有基于SQL的提供程序。
答案 1 :(得分:0)
如果int可以为空并且当前值为null,我发现这不起作用。什么都没发生。但是如果我将值设置为0则可以正常工作。所以我的int col现在默认为0。