轉自:http://www.maomao365.com/?p=5682
摘要:
下文將講述如何在sql server建表時,設置一個計算列
計算列的應用場景:
當我們需要建立一個物料存儲明細表時,此時表中會存儲數量和單價,此時如果我們再放入一列“合計”,
那么會顯的多余,因為合計=數量*單價
此時我們在設計表時,就可以將第三個字段設置為自動計算列。
-------------------------------
注意事項:
不可以對計算列進行插入或更新操作,否則會產生相應的異常信息
消息 271,級別 16,狀態 1,第 3 行
不能修改列 "priceAll",因為它是計算列,或者是 UNION 運算符的結果。
例:
CREATE TABLE A ( shopId varchar(30) not null, qty int not NULL, price int not NULL, priceAll AS qty*price ) go insert into A(shopId,qty,price) values('A',1,2),('B',6,9),('C',8,7), ('D',9,2),('E',5,2),('F',3,2) go select * from A go truncate table A drop table A
<a href="http://www.maomao365.com/wp-content/uploads/2018/03/mssql_sqlServer_創建計算列方法.png"><img src="http://www.maomao365.com/wp-content/uploads/2018/03/mssql_sqlServer_創建計算列方法.png" alt="mssql_sqlServer_創建計算列方法" width="394" height="501" class="size-full wp-image-5683" /></a>