¿Qué diferencia hay entre TRUNCATE y DELETE? Aparentemente son iguales, se usan para eliminar datos de una tabla, solo datos, la estructura se mantiene.
TRUNCATE
Este comando remueve todas las filas de una tabla sin registrar las eliminaciones individuales en el log de transacciones. Prácticamente hace lo mismo que DELETE sin modificar o borrar la estructura de la tabla, sin embargo no se puede utilizar la clausula WHERE. TRUNCATE no permite filtrar por filas, elimina todos los registros de una tabla.
Por ejemplo:
TRUNCATE TABLE Autores
Esto eliminará todos los registros de la tabla Autores.
DELETE
DELETE también remueve las filas de una tabla, pero registra las eliminaciones individuales en el log de transacciones. Podemos utilizar la clausula WHERE para filtrar las filas que necesitemos eliminar.
Ejemplo:
DELETE FROM Autores (elimina todas las filas de la tabla autores)
DELETE FROM Autores WHERE IdCiudad = 30 (elimina las filas de la tabla autores que coincide con la condición indicada)
DIFERENCIAS ENTRE TRUNCATE Y DELETE
Ahora que sabemos en que consiste cada sentencia, veamos las semejanzas y diferencias:
- Ambas eliminan los datos, no la estructura.
- Solo DELETE permite la eliminación condicional de los registros.
- DELETE es una operación registrada en el log de transacciones, basada en registrar cada eliminación individual.
- TRUNCATE es una operación registrada en el log de transacciones, pero como un todo, en conjunto, no por eliminación individual. TRUNCATE se registra como una liberación de las páginas de datos en las cuales existen los datos.
- TRUNCATE es más rápida que DELETE.
- Ambas se pueden deshacer con un ROLLBACK.
- TRUNCATE reiniciará el contador para una tabla que contenga una columna IDENTITY.
- DELETE mantendrá el contador de la tabla para una columna IDENTITY.
- TRUNCATE es un comando DDL(lenguaje de definición de datos) mientras que DELETE es un DML(lenguaje de manipulación de datos).
- TRUNCATE no desencadena un TRIGGER, DELETE sí.
Diferencia entre Truncate y Delete
Etiquetas:
delete,
diferencias,
semejanzas,
truncate
Technorati tags:
delete,
diferencias,
semejanzas,
truncate
Blogalaxia tags:
delete,
diferencias,
semejanzas,
truncate
PeruBlogs tags:
delete,
diferencias,
semejanzas,
truncate
Suscribirse a:
Enviar comentarios (Atom)
Los mas leídos en este blog
- Visual Basic y Sql Server con Ado Data Control
- Sentencia Where con condicionales
- Diferencia entre Truncate y Delete
- Como hacer una consulta por fecha en Sql Server
- Programar para Pocket PC 2003: Como probar una aplicación que desarrollemos
- Backups con WinRar de Bases de Datos
- Usar teclas de función
- Auditando Tablas y Bases de Datos en Sql Server
4 comentarios:
muy buena la explicación jugadores de tenis
muy buena me ayudastes
Error, truncate no se le puede hacer rollback...
Black Moon Informate bien primero antes de desinformar, si se puede hacer el Rollback
Publicar un comentario