/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
sql 70 ??
Fra : MBJ


Dato : 15-04-03 21:29


Er det muligt at "reindexere " sin database og dermed nå større performance
?? Er indexering en form for defragmentering ??

MVH

Nybegynderen !!

(Michael)



 
 
Peter Lykkegaard (15-04-2003)
Kommentar
Fra : Peter Lykkegaard


Dato : 15-04-03 21:53

> Er det muligt at "reindexere " sin database og dermed nå større
performance

Kommer an på hvad du vil opnå og hvordan du bruger din database
Det vil sige hvilke data du har og om disse er statiske eller dynamiske

> ?? Er indexering en form for defragmentering ??
>
Kunne man sige, men det er mere end det

Jeg bruger denne "vedhæftede" konstruktion til reindexering

Du skal evt bytte dbo med dit eget skema navn
dbo står for database owner, hvis du ikke er owner så kan det evt være
username
I Enterprise Manager kan du se hvad "owner" af tabellerne hedder (2nden
kollonne)

mvh/Peter Lykkegaard

-----------------------------------------------------
CREATE PROCEDURE [sp_ReIndex]
AS
DECLARE @Table VarChar(255)

DECLARE cTable CURSOR FOR
SELECT TABLE_SCHEMA + '.' + TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE' and TABLE_SCHEMA = 'dbo'

OPEN cTable
FETCH NEXT FROM cTable Into @Table
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT 'Reindexing ' + @Table
DBCC DBREINDEX(@Table)
FETCH NEXT FROM cTable Into @Table

END

CLOSE cTable
DEALLOCATE cTable
GO



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste