Intentar esta escritura: --INF: Cómo encoger el registro de transacción del servidor 7.0 del SQL
-- SQL7
http://support.microsoft.com/support/kb/articles/q256/6/50.asp?id=256650&SD-- SQL7
http://www.support.microsoft.com/kb/256650 -- SQL2000
http://support.microsoft.com/kb/272318/en-us-- SQL2005
http://support.microsoft.com/kb/907511/en-us-- seleccionar el db_name ()
-- seleccionar * de sysfiles
-- ¡ESTA ESCRITURA NO SE PIENSA PARA EL USO PROGRAMADO!! ¡LEER BOL y los URL!!
FIJAR NOCOUNT ENCENDIDO
DECLARAR el sysname del @LogicalFileName,
@MaxMinutes internacional,
@NewSize la internacional
-- EL *** SE CERCIORA DE CAMBIAR LAS 3 LÍNEAS SIGUIENTES CON SUS CRITERIOS. ***
SELECCIONAR el @LogicalFileName = ''
, -- Utilizar sp_helpfile para identificar el nombre de fichero lógico que usted quiere para encogerse.
@MaxMinutes = 10, -- Límite el el tiempo permitido envolver el registro.
@NewSize = 305 -- en el MB
-- Fijar/inicializarse
DECLARAR @OriginalSize la internacional
SELECTO @OriginalSize = tamaño -- en las páginas 8K
De sysfiles
DONDE nombrar = @LogicalFileName
El “tamaño original SELECTO de” + db_name () + “REGISTRO es” +
CONVERTIDO (VARCHAR (30), @OriginalSize) + “páginas 8K o” +
CONVERTIR (VARCHAR (30), (@ORIGINALSIZE*8/1024)) + “MB”
De sysfiles
DONDE nombrar = @LogicalFileName
CREAR la TABLA DummyTrans
(Carbón de leña de DummyColumn (8000) no nulos)
-- Envolver el registro y truncarlo.
DECLARAR EL @COUNTER INTERNACIONAL,
FECHA Y HORA del @StartTime,
@TruncLog VARCHAR (255)
SELECCIONAR EL @STARTTIME = GETDATE (),
@TruncLog = “REGISTRO DE RESERVA” + db_name () + “CON TRUNCATE_ONLY”
-- Intentar a encogimiento inicial.
DBCC SHRINKFILE (EL @LOGICALFILENAME, @NEWSIZE)
EXEC (@TruncLog)
-- Envolver el registro en caso de necesidad.
MIENTRAS QUE @MaxMinutes > DATEDIFF (MI, @StartTime, GETDATE ()) -- el tiempo no ha expirado
Y @OriginalSize = (tamaño SELECTO de los sysfiles DONDE nombre = el @LogicalFileName) -- el registro no se ha encogido
Y (@OriginalSize * 8 /1024) > @NewSize -- El valor pasó adentro para el nuevo tamaño es más pequeño que el tamaño actual.
COMENZAR -- Lazo externo.
SELECCIONAR el @Counter = 0
MIENTRAS QUE ((EL @COUNTER <�> COMIENZA -- actualización
INSERTAR los VALORES de DummyTrans (“registro del terraplén ") -- Porque es un campo del carbón de leña inserta 8000 octetos.
CANCELACIÓN DummyTrans
SELECCIONAR el @Counter = el @Counter + 1
EXTREMO -- actualización
EXEC (@TruncLog) -- Ver si un trunc del registro lo encoge.
EXTREMO -- lazo externo
El “tamaño final SELECTO de” + db_name () + “REGISTRO es” +
CONVERTIR (VARCHAR (30), tamaño) + “las páginas 8K o” +
CONVERTIR (VARCHAR (30), (size*8/1024)) + “MB”
De sysfiles
DONDE nombrar = @LogicalFileName
CAER la TABLA DummyTrans
La IMPRESIÓN “*** realiza un *** de reserva de la base de datos completa”
FIJAR NOCOUNT APAGADO