Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Kliknite na tlačidlo " Štart " vo Windows a vyberte " Všetky programy " . Kliknutím otvoríte
2
Zadajte nasledujúce príkazy SQL v okne konzoly " SQL Management Console . " :
SET NOCOUNT ON ;
DECLARE @ tablename varchar ( 255 ) ;
DECLARE @ execstr varchar ( 400 ) ;
DECLARE @ objectid int ;
DECLARE @ IndexId int ;
DECLARE @ frag desatinné miesto ;
DECLARE @ maxfrag desatinné ;
SELECT @ maxfrag = 30,0 ;
DECLARE CURSOR stoly na predaj
SELECT TABLE_SCHEMA + ' . ' + TABLE_NAME
Z information_schema.tables
WHERE TABLE_TYPE = " Základná tabuľka " ;
CREATE TABLE # fraglist (
Název_objektu char ( 255 ) ,
ObjectId int ,
IndexName char ( 255 ) ,
IndexId int ,
Lvl int ,
CountPages int ,
CountRows int ,
MinRecSize int ,
MaxRecSize int ,
AvgRecSize int ,
ForRecCount int ,
Maximálne int ,
ExtentSwitches int ,
AvgFreeBytes int ,
AvgPageDensity int ,
ScanDensity desatinné
BestCount int ,
ActualCount int ,
LogicalFrag desatinné
ExtentFrag desatinných miest ) , Spojené
OPEN tabuľky ;
FETCH NEXT
z tabuliek
INTO @ tablename ;
WHILE @ @ FETCH_STATUS = 0
BEGIN
INSERT INTO # fraglist
EXEC ( ' DBCC SHOWCONTIG ( '' ' + @ tablename + '' ' )
SA RÝCHLO , TABLERESULTS , ALL_INDEXES , NO_INFOMSGS ' ) ;
FETCH NEXT
Z tabuľky
INTO @ tablename ;
END ;
ZAVRIEŤ tabuľky ;
navrátiť tabuliek ;
DECLARE CURSOR indexy na predaj
SELECT ObjectName , Id_objektu , IndexId , LogicalFrag
Z # fraglist
WHERE LogicalFrag > = @ maxfrag
A INDEXPROPERTY ( ObjectId , IndexName , " IndexDepth ' ) > 0 ;
OPEN indexy ;
FETCH NEXT
Z indexov
INTO @ tablename , @ objectid , @ IndexId , @ frag ;
WHILE @ @ FETCH_STATUS = 0
BEGIN klipart
PRINT "vykonávajúci DBCC INDEXDEFRAG ( 0 , ' + RTrim ( @ tablename ) + " ,
" + RTrim ( @ IndexId ) + " ) - fragmentácia v súčasnej dobe "
+ RTrim ( CONVERT ( varchar ( 15 ) , @ frag ) ) + ' % ' ;
SELECT @ execstr = ' DBCC INDEXDEFRAG ( 0 , ' + RTrim ( @ objectid ) + ' ,
" + RTrim ( @ IndexId ) + ' ) ' ;
EXEC ( @ execstr ) ;
FETCH NEXT FROM
indexy
INTO @ tablename , @ objectid , @ IndexId , @ frag ;
END ;
ZAVRIEŤ indexy , Spojené
navrátiť indexy ;
DROP TABLE # fraglist ;
GO
3
Kliknite na " Súbor " a vyberte položku " Spustiť " oklamať index MSSQL databázy
< . br >
Copyright © počítačové znalosti Všetky práva vyhradené