Hxj.Data V1.5.1版本開始支持字段組合更新。
例如:update table set a=b+c
update table set a=a+1
(+、-、*、/、%)依次類推。
下面將舉具體的例子。(例子只是為了測試效果,沒有實際意義)
例一、
DbSession.Default.Update<Products>(Products._.UnitPrice, Products._.ReorderLevel + Products._.UnitPrice, Products._.ProductID == 1);
生成的sql如下:
Text:
UPDATE [Products] SET [UnitPrice]=[Products].[ReorderLevel] + [Products]. [UnitPrice]
WHERE [Products].[ProductID] = @mjpxqimmtmiyguvv
Parameters:
@mjpxqimmtmiyguvv[Int32] = 1
就是將UnitPrice字段的值更新為UnitPrice加上ReorderLevel字段的值。
例二、
DbSession.Default.Update<Products>(Products._.UnitPrice, Products._.UnitPrice + 1, Products._.ProductID == 1);
生成的sql如下:
Text:
UPDATE [Products] SET [UnitPrice]=[Products].[UnitPrice] + @tszvynxwnukkjuzj
WHERE [Products].[ProductID] = @anuixieadujzvvka
Parameters:
@tszvynxwnukkjuzj[Int32] = 1
@anuixieadujzvvka[Int32] = 1
這裡就是將UnitPrice字段的值加1。