星期六, 11月 13, 2010

[MSSQL]列出資料庫所有資料表的狀態

找資料找到的,可以列出所有TABLE目前的資料量,使用多少容量,blabla之類的。
出來就像下面這張圖這樣@_@


declare @id int 
declare @type character(2) 
declare @pages int 
declare @dbname sysname
declare @dbsize dec(15,0)
declare @bytesperpage dec(15,0)
declare @pagesperMB dec(15,0)

create table #spt_space
(
objid int null,
rows int null,
reserved dec(15) null,
data dec(15) null,
indexp dec(15) null,
unused dec(15) null
)

set nocount on

-- Create a cursor to loop through the user tables
declare c_tables cursor for
select id
from sysobjects
where xtype = 'U'

open c_tables

fetch next from c_tables
into @id

while @@fetch_status = 0
begin

/* Code from sp_spaceused */
insert into #spt_space (objid, reserved)
select objid = @id, sum(reserved)
from sysindexes
where indid in (0, 1, 255)
and id = @id

select @pages = sum(dpages)
from sysindexes
where indid < 2
and id = @id
select @pages = @pages + isnull(sum(used), 0)
from sysindexes
where indid = 255
and id = @id
update #spt_space
set data = @pages
where objid = @id


/* index: sum(used) where indid in (0, 1, 255) - data */
update #spt_space
set indexp = (select sum(used)
from sysindexes
where indid in (0, 1, 255)
and id = @id)
- data
where objid = @id

/* unused: sum(reserved) - sum(used) where indid in (0, 1, 255) */
update #spt_space
set unused = reserved
- (select sum(used)
from sysindexes
where indid in (0, 1, 255)
and id = @id)
where objid = @id

update #spt_space
set rows = i.rows
from sysindexes i
where i.indid < 2
and i.id = @id
and objid = @id

fetch next from c_tables
into @id
end

select TableName = (select left(name,60) from sysobjects where id = objid),
Rows = convert(char(11), rows),
ReservedKB = ltrim(str(reserved * d.low / 1024.,15,0) + ' ' + 'KB'),
DataKB = ltrim(str(data * d.low / 1024.,15,0) + ' ' + 'KB'),
IndexSizeKB = ltrim(str(indexp * d.low / 1024.,15,0) + ' ' + 'KB'),
UnusedKB = ltrim(str(unused * d.low / 1024.,15,0) + ' ' + 'KB')

from #spt_space, master.dbo.spt_values d
where d.number = 1
and d.type = 'E'
order by reserved desc 
drop table #spt_space
close c_tables
deallocate c_tables
資料來源:unicorn.net

星期三, 11月 03, 2010

小感碎念

今天左耳後方不時的傳來陣陣抽痛....
趕著以良好姿態呈現的網頁怎麼樣也都要秀出他的小瑕疵,
前方業務不時的傳來需要調整的資料及頁面,
總仔天外飛來好幾筆新的想法,希望我提供數據資料,
同事要離職,
主管默默的想把事情又堆到我這來....

最近一直處在如此的爆炸邊緣,
不得不承認我最近對於工作多了很多的不滿及怨言,
之前的工作累甚麼的,好似也不會如此的低氣壓,
會一直想找人抱怨事情...
個人並不喜歡對工作有所抱怨,
那並不是負責的態度,
如果你聽到我說那大概也是只有嘴上嚷嚷,
半帶著玩笑成份,通常我也還笑得出來,甚至燦爛!
不過 今天中午拉著V陪我去買咖啡坐在公園發呆一會,
還是決定回公司睡午覺!!(遭毆
席間很多事很想當下就說,
基於道德或說是自私仍然忍了下來,
但是已經可以清楚的感覺到那樣的衝動,
這不是我樂見的...
會如此通常代表著已經有一種臨界的爆發衝動,
只差在導火線上點火...

實在很感謝熊姐,
不能說的秘密我全對她說了...
(不是說不能說?! 再毆
大概也只有她能懂我現在苦悶的心情...

今天也突然有一種我該好好的想一下來交個男朋友之類的,
這樣才有專職的垃圾桶可以站在我這邊,
聽我抱怨,或是幫我罵主管是混蛋諸如此類的事情!!!
結論: 男朋友的任務是專門裝垃圾!! (拖走....

=======沒有天天過年,也不是天天哀怨的分隔線=========

星期日琴拿出來練,
專練了副歌的部分,
恩...我有手指頭扭到的感覺
咪弦的音老是按不準...
明天又要上課了,
希望有順一點了...

因為加上了高音的副歌,
整首的哭腔更重了XD
所以 這星期沒有錄聲音下來....