亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

使用一個T-SQL語句批量查詢數據表占用空間及其

系統 2108 0
原文: 使用一個T-SQL語句批量查詢數據表占用空間及其行數

?

要找到數據庫中數據表占用的空間和存在的行數。可以使用sp_spaceused搭配數據表的名稱。就可以產生該表耗用的空間和現有行數。

如:

USE ADVENTUREWORKS

GO

EXEC sp_spaceused [Sales.SalesOrderHeader]

GO

?

?

但如果數據庫中包含數千的數據表,如何能利用一句SQL語句來實現?

?

解決方法:

一、動態SQL:

先用T-SQL動態產生表達式,然后放到一個查詢中執行。如:

USE ADVENTUREWORKS

GO

SET NOCOUNT ON

SELECT 'EXEC SP_SPACEUSED [' + S . name + '.' + T . name + '];'

FROM sys . tables T INNER JOIN sys . schemas S

ON T . SCHEMA_ID = S . SCHEMA_ID

WHERE S . NAME = 'HumanResources'

SET NOCOUNT OFF

結果如下:

使用一個T-SQL語句批量查詢數據表占用空間及其行數

把結果復制到新的窗口執行即可得到結果。

但這種方法需要人手操作不適合自動化、定時化操作。

二、使用累加字符串的方式動態生成:

因為要自動化,所以會利用數據表的INSERT觸發器,執行動態表達式。并且自動將輸入的數據表,計算結果:

-- 建立表,執行 insert 觸發器

USE AdventureWorks

GO

CREATE TABLE myTab

(

??? TableName VARCHAR ( 255 )

)

GO

?

?

-- 建立觸發器:

CREATE TRIGGER tr2 ON myTab

AFTER INSERT

AS

??? DECLARE @sql VARCHAR ( max )

??? SET @sql = ''

??????? -- 使用累加字符串,產生語句

??? SELECT @sql = @sql +

??????????? ??????????? 'EXEC sp_spaceused [' + TableName + ']; '

??????????? FROM inserted

??????????? -- 利用 EXECUTE 執行動態語句

??? EXEC ( @sql )

?

-- 新增指定的數據表名稱,會自動顯示數據表的使用空間:

INSERT myTab

SELECT S . name + '.' + T . name

FROM sys . tables T INNER JOIN sys . schemas S

ON T . schema_id = S . schema_id

WHERE S . name = 'HumanResources'

?

? 使用一個T-SQL語句批量查詢數據表占用空間及其行數

使用一個T-SQL語句批量查詢數據表占用空間及其行數


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产亚洲精品97在线观看 | 性生活视频网站 | 久久视频免费观看 | 精品视频午夜一区二区 | 免费观看a毛片一区二区不卡 | 五月天亚洲婷婷 | 一级黄色片网站 | 欧美精品99久久久久久人 | 欧美日韩91 | 四虎影院黄色 | 久草手机视频 | 天天爱天天舔 | 日韩欧美视频免费观看 | 精品久久在线 | 欧美精品在线看 | 亚洲国产成人精品91久久久 | 99久久99热久久精品免费看 | 成人夜色视频在线观看网站 | 四虎4444hu4影视最新地址 | 一级成人毛片免费观看欧美 | 日韩区在线 | 玖玖爱免费 | 久久伊人免费 | 九九热在线视频观看 | 国产丶欧美丶日韩丶不卡影视 | a毛片全部免费播放 | 日韩伦理在线视频 | 香蕉视频一级 | 欧美日韩大片 | 欧洲免费无线码二区5 | 黄在线免费看 | 天天干天天操天天爱 | 免费播放欧美毛片欧美aaaaa | 亚州不卡 | 国内久久久久久久久久 | 久久99中文字幕久久 | 国产激情对白一区二区三区四 | 中国美女hdxxxxx | 久久爱综合网 | 欧美在线性爱视频 | 和日本免费不卡在线v |