PDA

View Full Version : سوال: میشه بگید این کد دقیقا چه کار میکنه؟



Bidel_barnamenevis
چهارشنبه 29 مهر 1388, 10:18 صبح
سلام،


DECLARE @tblTempSizes TABLE(
[name] varchar(100),
[rows] integer,
[reserved] varchar(100),
[data ]varchar(100),
[index_size] varchar(100),
[unused] varchar(100) )
DECLARE @names TABLE([name] varchar(100))
INSERT INTO @names
SELECT name FROM sys.TABLEs where type = 'u'
DECLARE @counter CURSOR
DECLARE @tempString VARCHAR(100)
SET @counter = CURSOR
FOR
SELECT [name] FROM @names
OPEN @counter
FETCH NEXT FROM @counter INTO @tempString
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO @tblTempSizes exec sp_spaceused @tempString
FETCH NEXT FROM @counter INTO @tempString
END
DEALLOCATE @counter
DECLARE @tblSizes TABLE(
[name] varchar(100),
[rows] integer,
[reserved] integer,
[data] integer,
[index_size] integer,
[unused] integer )
INSERT INTO @tblSizes
SELECT [name],rows,replace(reserved,' KB','') as [reserved(KB)], replace(data,' KB','') as [data(KB)], replace(index_size,' KB','') as [index_size(KB)], replace(unused,' KB','') as [unused(KB)]
FROM @tblTempSizes
SELECT *
FROM @tblSizes
ORDER BY data DESC


ممنون

Arash_janusV3
چهارشنبه 29 مهر 1388, 10:59 صبح
سلام
اینا از کجا گرفتی ؟
sample ?

Bidel_barnamenevis
چهارشنبه 29 مهر 1388, 11:06 صبح
سلام
اینا از کجا گرفتی ؟
sample ?

از یکی از این سایت ها:

http://www.mitchelsellers.com/blogs/articletype/articleview/articleid/121/determing-sql-server-table-size.aspx

http://stackoverflow.com/questions/771248/size-of-a-single-record-sql

من میخوام حجم مورد استفاده در دیتابیس را برای هر کاربر مشخص کنم.

ir.start
چهارشنبه 29 مهر 1388, 13:49 عصر
اينها يك متغير براي تيبل ميگيرن و با دستور insert ورود اطلاعات انجام ميدن و در نهايت هم بصورت مرتب شده desc نشونشون ميده