Truncate table vs Delete

19/04/2006 - 20:29 por CHAR72 | Informe spam
Tengo la siguiente cuestion: en un DTS tengo que borrar datos al comienzo,
pero aparentemente me consume mucho log y me da error ( de una tabla debo
eliminar 350000 registros) y da error, si en cambio hago un truncate table y
ejecuto el DTS funciona perfecto.
Como podria hacer el DELETE sin que consuma LOG? no puedo usar el truncate
pues no debo eliminar todos los datos.

Saludos

Preguntas similare

Leer las respuestas

#1 Richard
19/04/2006 - 21:39 | Informe spam
Que rror te indica al momemto de eliminar?
Respuesta Responder a este mensaje
#2 BitOne®
20/04/2006 - 07:37 | Informe spam
No puedes hacer Delete sin que el log de la base de datos cresca.

El Comando delete elimina los registros uno a uno y va guardando en el log
de transacciones cada entrada que ha sido eliminada,
en cambio truncate elimina los registros por paginas y solo guarda en el log
de transacciones la pagina de asignacion eliminada.

Saludos,
BitOne®

"CHAR72" <char72[nos pa m]@gmail.com> escribió en el mensaje
news:%
Tengo la siguiente cuestion: en un DTS tengo que borrar datos al comienzo,
pero aparentemente me consume mucho log y me da error ( de una tabla debo
eliminar 350000 registros) y da error, si en cambio hago un truncate table


y
ejecuto el DTS funciona perfecto.
Como podria hacer el DELETE sin que consuma LOG? no puedo usar el truncate
pues no debo eliminar todos los datos.

Saludos


Respuesta Responder a este mensaje
#3 Eduardo Castro
20/04/2006 - 18:28 | Informe spam
Si haces delete si graba en los logs un registro por cada fila borrada, si
haces un truncate en el log solo se guarda una entrada.

Eduardo Castro
Microsoft MVP
MCSE 2003+Security, MCDBA, MCSD .NET, CCNA

"CHAR72" <char72[nos pa m]@gmail.com> wrote in message
news:%
Tengo la siguiente cuestion: en un DTS tengo que borrar datos al comienzo,
pero aparentemente me consume mucho log y me da error ( de una tabla debo
eliminar 350000 registros) y da error, si en cambio hago un truncate table
y ejecuto el DTS funciona perfecto.
Como podria hacer el DELETE sin que consuma LOG? no puedo usar el truncate
pues no debo eliminar todos los datos.

Saludos

Respuesta Responder a este mensaje
#4 Eduardo Castro
20/04/2006 - 18:28 | Informe spam
Si haces delete si graba en los logs un registro por cada fila borrada, si
haces un truncate en el log solo se guarda una entrada.

Eduardo Castro
Microsoft MVP
MCSE 2003+Security, MCDBA, MCSD .NET, CCNA

"CHAR72" <char72[nos pa m]@gmail.com> wrote in message
news:%
Tengo la siguiente cuestion: en un DTS tengo que borrar datos al comienzo,
pero aparentemente me consume mucho log y me da error ( de una tabla debo
eliminar 350000 registros) y da error, si en cambio hago un truncate table
y ejecuto el DTS funciona perfecto.
Como podria hacer el DELETE sin que consuma LOG? no puedo usar el truncate
pues no debo eliminar todos los datos.

Saludos

Respuesta Responder a este mensaje
#5 CHAR72
20/04/2006 - 19:58 | Informe spam
Gracias por la explicacion pero sigo masomenos en la misma. Ademas el log
que quedo al borde del espacio asignado esta en 314 de 329 asignado,
aparentemente cuando intente ejecutar el DTS y dio el error (en ese caso,
error no especificado) y no decremento, tiene la opcion AUTO_SHRINK en ON.

Cuanto espacio nesecitaria entonces o como lo prodria hacer?

Saludos

"CHAR72" <char72[nos pa m]@gmail.com> escribió en el mensaje
news:%
Tengo la siguiente cuestion: en un DTS tengo que borrar datos al comienzo,
pero aparentemente me consume mucho log y me da error ( de una tabla debo
eliminar 350000 registros) y da error, si en cambio hago un truncate table
y ejecuto el DTS funciona perfecto.
Como podria hacer el DELETE sin que consuma LOG? no puedo usar el truncate
pues no debo eliminar todos los datos.

Saludos

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida