檢視資料庫使用的空間
sp_spaceused @updateusage='true
'
檢視所據庫中所有表的使用空間
方法1: 呼叫系統的儲存過程(返回多個表,不太好瀏覽)
exec sp_msforeachtable "exec sp_spaceused '?'"
方法2: 先建立乙個儲存過程,再執行儲存過程(也可不建立,直接執行儲存過程內的語句)(返回乙個表,關係較明了)
createprocedure sp_spaceusedview
asbegin
ifnot
exists (select
0from dbo.sysobjects where id =
object_id(n'
[dbo].[tablespaceinfo]
') and
objectproperty(id, n'
isusertable
') =
1)create
table tablespaceinfo --
建立結果儲存表
(nameinfo varchar(50) ,
rowsinfo int , reserved varchar(20) ,
datainfo varchar(20) ,
index_size varchar(20) ,
unused varchar(20)
)delete
from tablespaceinfo --
清空資料表
declare
@tablename
varchar(255) --
表名稱declare
@cmdsql
varchar(500)
declare info_cursor cursor
forselect o.name from dbo.sysobjects o
where
objectproperty(o.id, n'
istable
') =
1and o.name not
like n'
#%%'
order
by o.name
open info_cursor
fetch
next
from info_cursor into
@tablename
while
@@fetch_status=0
begin
ifexists (select
0from 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
endclose info_cursor
deallocate info_cursor
--顯示資料庫資訊
exec sp_spaceused @updateusage='
true'--
顯示表資訊
select
*from tablespaceinfo order
bycast(left(ltrim(rtrim(reserved)) , len(ltrim(rtrim(reserved)))-
2) as
int) desc
end
SQL Server 資料庫每個表占用的空間 大小
檢視mssql資料庫每個表占用的空間大小 sp spaceused 顯示行數 保留的磁碟空間以及當前資料庫中的表所使用的磁碟空間,或顯示由整個資料庫保留和使用的磁碟空間。語法sp spaceused objname objname updateusage updateusage 引數 objname...
資料庫縮小表空間
案例環境 今天啟動應用程式,程式報錯如下 exceptionmessage ora 01653 表 hbxnb cs.bz29 無法通過 1024 在表空間 users 中 擴充套件 ora 06512 在 hbxnb cs.dbms context line 40 ora 01653 表 hbxn...
oracle 資料庫表空間
1 建立表空間 格式 建立表空間 create tablespace 表空間名 datafile 表空間檔案儲存物理路徑.ora size 500m defaultstorage autoextend on initial 100m next 100m minextents 20 maxextent...