O comando SP_DBCC - URGENTE!!
09/12/2003
0
queria indexar toda a base e o nome dela é ´crm fiat´ e como tem espaço ele nao aceita colocar o comando: ´SP_DBCC CRM PO´ como que eu faço para resolver isso???
Coppola
Curtir tópico
+ 0
Responder
Posts
09/12/2003
Fabricio_saldanha
copola para reindexar toda a minha base de dados eu utilizo a procedure abaixo, espero que ajude.
CREATE PROCEDURE dbo.SpDba_Reindex
AS
/*
Executa o DBCC REINDEX para todas as tabelas.
*/
DECLARE @TABELA VARCHAR(100)
DECLARE REINDEX_CURSOR CURSOR FOR
SELECT O.NAME
FROM SYSOBJECTS O
WHERE O.TYPE = ´U´
AND UID = 1 -- LOCALIZA APENAS AS TABELAS CRIADAS NO SCHEMA DO DBO
ORDER BY NAME
OPEN REINDEX_CURSOR
FETCH NEXT FROM REINDEX_CURSOR INTO @TABELA
WHILE (@@FETCH_STATUS = 0)
BEGIN
PRINT ´REINDEXANDO A TABELA: ´+@TABELA
EXEC (´DBCC DBREINDEX (´ + @TABELA + ´)´ )
FETCH NEXT FROM REINDEX_CURSOR INTO @TABELA
END
DEALLOCATE REINDEX_CURSOR
PRINT ´************* FIM´ + ´ *************´
CREATE PROCEDURE dbo.SpDba_Reindex
AS
/*
Executa o DBCC REINDEX para todas as tabelas.
*/
DECLARE @TABELA VARCHAR(100)
DECLARE REINDEX_CURSOR CURSOR FOR
SELECT O.NAME
FROM SYSOBJECTS O
WHERE O.TYPE = ´U´
AND UID = 1 -- LOCALIZA APENAS AS TABELAS CRIADAS NO SCHEMA DO DBO
ORDER BY NAME
OPEN REINDEX_CURSOR
FETCH NEXT FROM REINDEX_CURSOR INTO @TABELA
WHILE (@@FETCH_STATUS = 0)
BEGIN
PRINT ´REINDEXANDO A TABELA: ´+@TABELA
EXEC (´DBCC DBREINDEX (´ + @TABELA + ´)´ )
FETCH NEXT FROM REINDEX_CURSOR INTO @TABELA
END
DEALLOCATE REINDEX_CURSOR
PRINT ´************* FIM´ + ´ *************´
Responder
Clique aqui para fazer login e interagir na Comunidade :)