中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SQL Server中怎么計算列是否占用空間

發布時間:2021-08-02 15:16:55 來源:億速云 閱讀:179 作者:Leah 欄目:數據庫

SQL Server中怎么計算列是否占用空間,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

今天看網上有個問題:SQL Server計算列是否占用空間
其實這個問 題查一下MSDN或者BOL就可以知道結果了 。在創建計算列的時候有一個參數可以指定PERSISTED。使用這個參數可以指定數據庫引擎將在表中物理存儲計算值,并在計算列依賴的任何其他列發生更 新時對這些計算值進行更新。而且將計算列標記為 PERSISTED,便可對具有確定性、但不精確的計算列創建索引,提高性能。
如果不使用PERSISTED參數,那么計算列不會占用磁盤空間,但是查詢計算列的時候要計算出值,這樣性能會受影響(空間換性能)。
這里我們測試一下:
USE tempdb
GO
-- CreateTable
CREATE TABLE UDFEffect(ID INT,
FirstName VARCHAR(100),
LastName VARCHAR(100))
GO
-- Insert OneHundred Thousand Records
INSERT INTO UDFEffect(ID,FirstName,LastName)
SELECT TOP 100000 ROW_NUMBER() OVER (ORDER BY a.name) RowID,
'Bob',
CASE WHEN ROW_NUMBER() OVER (ORDER BY a.name)%2 = 1 THEN 'Smith'
ELSE 'Brown' END
FROM sys.all_objects a
CROSS JOIN sys.all_objects b
GO
-- Check thespace used by table
sp_spaceused 'UDFEffect'
GO

-- AddComputed Column
ALTER TABLE dbo.UDFEffect ADD
FullName AS (FirstName+' '+LastName)
GO
-- Check thespace used by table
sp_spaceused 'UDFEffect'
GO

可以看到表大小并沒有改變,數據頁沒有增長。
-- AddComputed Column PERSISTED
ALTER TABLE dbo.UDFEffect ADD
FullName_P AS (FirstName+' '+LastName) PERSISTED
GO
-- Check thespace used by table
sp_spaceused 'UDFEffect'
GO

使用PERSISTED參數可以看到數據有增長。
-- Clean upDatabase
DROP TABLE UDFEffect
GO

看完上述內容,你們掌握SQL Server中怎么計算列是否占用空間的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

满城县| 建昌县| 平度市| 临沧市| 恩平市| 大洼县| 昂仁县| 乳山市| 岚皋县| 土默特左旗| 潜江市| 迁西县| 崇阳县| 祁阳县| 宣汉县| 新绛县| 桦川县| 南靖县| 东安县| 永顺县| 衡阳县| 竹山县| 密山市| 巢湖市| 桐乡市| 长子县| 汉阴县| 竹溪县| 永修县| 东乌珠穆沁旗| 连城县| 海盐县| 宝坻区| 拉萨市| 民权县| 呼图壁县| 盐源县| 清河县| 绵竹市| 游戏| 政和县|