如何才能快速知道資料庫中每個表的大小?

2021-03-31 08:57:00 字數 1792 閱讀 4445

sp_spaceused

顯示行數、保留的磁碟空間以及當前資料庫中的表所使用的磁碟空間,或顯示由整個資料庫保留和使用的磁碟空間。

語法sp_spaceused [[@objname =] 'objname']

[,[@updateusage =] 'updateusage']

引數[@objname =] 'objname'

是為其請求空間使用資訊(保留和已分配的空間)的表名。objname 的資料型別是 nvarchar(776),預設設定為 null。

[@updateusage =] 'updateusage'

表示應在資料庫內(未指定 objname 時)還是在特定的物件上(指定 objname 時)執行 dbcc updateusage。值可以是 true 或 false。updateusage 的資料型別是 varchar(5),預設設定為 false。

返回**值

0(成功)或 1(失敗)

結果集如果省略 objname,則返回兩個結果集。

列名 資料型別 描述

database_name varchar(18) 當前資料庫的名稱。

database_size varchar(18) 當前資料庫的大小。

unallocated space varchar(18) 資料庫的未分配空間。

列名 資料型別 描述

reserved varchar(18) 保留的空間總量。

data varchar(18) 資料使用的空間總量。

index_size varchar(18) 索引使用的空間。

unused varchar(18) 未用的空間量。

如果指定引數,則返回下面的結果集。

列名 資料型別 描述

name nvarchar(20) 為其請求空間使用資訊的表名。

rows char(11) objname 表中現有的行數。

reserved varchar(18) 為 objname 表保留的空間總量。

data varchar(18) objname 表中的資料所使用的空間量。

index_size varchar(18) objname 表中的索引所使用的空間量。

unused varchar(18) objname 表中未用的空間量。

注釋sp_spaceused 計算資料和索引使用的磁碟空間量以及當前資料庫中的表所使用的磁碟空間量。如果沒有給定 objname,sp_spaceused 則報告整個當前資料庫所使用的空間。

當指定 updateusage 時,microsoft? sql server? 掃瞄資料庫中的資料頁,並就每個表使用的儲存空間對 sysindexes 表作出任何必要的糾正。例如會出現這樣一些情況:當除去索引後,表的 sysindexes 資訊可能不是當前的。該程序在大表或資料庫上可能要花一些時間執行。只有當懷疑所返回的值不正確,而且該程序對資料庫中的其它使用者或程序沒有負面影響時,才應使用該程序。如果首選該程序,則可以單獨執行 dbcc updateusage。

許可權執行許可權預設授予 public 角色。

示例a. 有關表的空間資訊

下例報告為 titles 表分配(保留)的空間量、資料使用的空間量、索引使用的空間量以及由資料庫物件保留的未用空間量。

use pubs

exec sp_spaceused 'titles'

b. 有關整個資料庫的已更新空間資訊

下例概括當前資料庫使用的空間並使用可選引數 @updateusage。

use pubs

sp_spaceused @updateusage = 'true'

查詢資料庫中每個表占用空間方法

1.執行如下儲存過程 create procedure dbo sys viewtablespace asbegin set nocount on create table dbo tableinfo 表名 varchar 50 collate chinese prc ci as null,記錄數 ...

如何快速在資料庫中插入資料

工作中很少用mysql插入資料,今天正好遇到,學習下 在toad mysql工具裡面,除了像execl 一樣手動插入資料之外,最好用insert語句插入資料,怎麼快速生成資料呢?1.右擊需要插入資料表,這裡是cd financing income,彈出generate sql 選擇to editor...

如何往資料庫中快速匯入資料

sqlbulkcopy是.net的乙個類常用於批量插入資料,這種方式比insert方式效能要高許多。需要注意的是,datatable中的列需要與即將插入的表的列相容,名稱和資料庫的順序完全一致。樓主往日期型別插入空值時就遇到了乙個問題,那就是不能給這一列的設定null值,而是要通過不給其賦值的方式。...