Uso y diferencias con TRUNCATE y DELETE en SQL Server

Parar borrar el contenido de una tabla podemos utilizar las sentencias TRUNCATE Table o DELETE. Una de las principales diferencias entre estas dos sentencias es que TRUNCATE es más rápida y deja un log más limpio por lo que si tenemos que borrar muchos datos está es la opción más recomendada. Otra gran diferencia es que DELETE es selectivo, es decir, puedes borrar todo o parte del contenido de la tabla mientras que TRUNCATE borraría todo el contenido.

Para poder utilizar la sentencia TRUNCATE el usuario necesitará tener uno de estos roles , sysadmin,, db_owner,  db_ddladmin. El más recomendado sería el último que sirve para ejecutar cualquier comando del lenguaje de definición de datos (DDL) en una base de datos y sería más restrictivo que los otros.

Sin ninguno de estos roles SQL nos reportaría un error de tipo “No se encuentra el objeto XXX o no tiene permisos”.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *