最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

獲取SQLServer數(shù)據(jù)庫里表占用容量大小_MySQL

來源:懂視網(wǎng) 責編:小采 時間:2020-11-09 17:00:48
文檔

獲取SQLServer數(shù)據(jù)庫里表占用容量大小_MySQL

獲取SQLServer數(shù)據(jù)庫里表占用容量大小_MySQL:SQL Server 其實只要使用系統(tǒng)內置的存儲過程sp_spaceused就可以得到表的相關信息 如:sp_spaceused 'tablename' 以下是為了方便寫的一個存儲過程,目的是把當前的所有表的相關信息全部都保存在一個指定的表里面 CREATE PROCEDURE g
推薦度:
導讀獲取SQLServer數(shù)據(jù)庫里表占用容量大小_MySQL:SQL Server 其實只要使用系統(tǒng)內置的存儲過程sp_spaceused就可以得到表的相關信息 如:sp_spaceused 'tablename' 以下是為了方便寫的一個存儲過程,目的是把當前的所有表的相關信息全部都保存在一個指定的表里面 CREATE PROCEDURE g
SQL Server


  其實只要使用系統(tǒng)內置的存儲過程sp_spaceused就可以得到表的相關信息
  
  如:sp_spaceused 'tablename'
  
  以下是為了方便寫的一個存儲過程,目的是把當前的所有表的相關信息全部都保存在一個指定的表里面
  
  CREATE PROCEDURE get_tableinfo AS
  
  if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tablespaceinfo]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
  create table tablespaceinfo             --創(chuàng)建結果存儲表
  (nameinfo varchar(50) ,
  rowsinfo int , reserved varchar(20) ,
  datainfo varchar(20) ,
  index_size varchar(20) ,
  unused varchar(20) )
  
  delete from tablespaceinfo --清空數(shù)據(jù)表
  
  declare @tablename varchar(255) --表名稱
  
  declare @cmdsql varchar(500)
  
  DECLARE Info_cursor CURSOR FOR
  select o.name
  from dbo.sysobjects o where OBJECTPROPERTY(o.id, N'IsTable') = 1
  and o.name not like N'#%%' order by o.name
  
  OPEN Info_cursor
  
  FETCH NEXT FROM Info_cursor
  INTO @tablename
  
  WHILE @@FETCH_STATUS = 0
  BEGIN
  
  if exists (select * from dbo.sysobjects where id = object_id(@tablename) and OBJECTPROPERTY(id, N'IsUserTable') = 1)
  execute sp_executesql
  N'insert into tablespaceinfo exec sp_spaceused @tbname',
  N'@tbname varchar(255)',
  @tbname = @tablename
  
  FETCH NEXT FROM Info_cursor
  INTO @tablename
  END
  
  CLOSE Info_cursor
  DEALLOCATE Info_cursor
  GO
  
  執(zhí)行存儲過程
  
  exec get_tableinfo
  
  查詢運行該存儲過程后得到的結果
  
  select *
  from tablespaceinfo
  order by cast(left(ltrim(rtrim(reserved)) , len(ltrim(rtrim(reserved)))-2) as int) desc
  

聲明:本網(wǎng)頁內容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

獲取SQLServer數(shù)據(jù)庫里表占用容量大小_MySQL

獲取SQLServer數(shù)據(jù)庫里表占用容量大小_MySQL:SQL Server 其實只要使用系統(tǒng)內置的存儲過程sp_spaceused就可以得到表的相關信息 如:sp_spaceused 'tablename' 以下是為了方便寫的一個存儲過程,目的是把當前的所有表的相關信息全部都保存在一個指定的表里面 CREATE PROCEDURE g
推薦度:
標簽: 獲取 使用 過程
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top