Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
Oracle/PLSQL: sentencia TRUNCATE TABLE
Este tutorial de Oracle describe cómo usar Oracle sentencia TRUNCATE TABLE Viene con gramática, ejemplos y ejercicios.
describir
La declaración TRUNCATE TABLE se usa para eliminar todos los registros de una tabla en Oracle. Realiza la misma función que la instrucción DELETE sin la cláusula WHERE.
advertir: La instrucción TRUNCATE TABLE no se puede revertir si la tabla está truncada.
sintaxis
La sintaxis de la instrucción TRUNCATE TABLE en Oracle/PLSQL es:
TRUNCATE TABLE [schema_name.]table_name [ PRESERVE MATERIALIZED VIEW LOG | PURGE MATERIALIZED VIEW LOG ] [ DROP STORAGE | REUSE STORAGE ] ;
parámetro o parámetro
schema_name es opcional. Si se especifica, es el nombre del esquema al que pertenece la tabla. table_name La tabla a truncar. Mantener registros de vistas materializadas es opcional. Si se especifica, el registro de vista materializado se conservará cuando se trunque la tabla. Este es el comportamiento predeterminado. PURGA MATERIALIZADO VISUALIZAR REGISTRO Opcional. Si se especifica, el registro de vistas materializadas se borrará cuando se trunque la tabla. Descartar el almacenamiento es opcional. Si se especifica, se liberará todo el espacio de almacenamiento para la fila truncada, excepto el espacio ya asignado por MINEXTENTS. Este es el comportamiento predeterminado. El almacenamiento de reutilización es opcional. Si se especifica, todo el espacio de almacenamiento para la fila truncada permanecerá asignado a la tabla.
ejemplo
En Oracle, truncar una tabla es una forma rápida de purgar registros de una tabla si no necesita preocuparse por las reversiones. Una de las razones es que cuando se trunca una tabla, no afecta a ningún índice, activador o dependencia de la tabla. También es mucho más fácil truncar una tabla que soltarla y volver a crearla.
Veamos un ejemplo de cómo usar la sentencia TRUNCATE TABLE en Oracle/PLSQL.
Por ejemplo:
TRUNCATE TABLE customers;
Este ejemplo trunca la tabla llamada clientes y elimina todos los registros de esa tabla.
Es equivalente a la siguiente instrucción DELETE en Oracle:
DELETE FROM customers;
Ambas sentencias hacen que se eliminen todos los datos de la tabla de clientes. La principal diferencia entre los dos es que la declaración DELETE se puede revertir si se selecciona, pero la declaración TRUNCATE TABLE no se puede revertir.
Veamos otro ejemplo donde prefijamos el nombre de la tabla con el nombre del esquema.
Por ejemplo:
TRUNCATE TABLE totn.suppliers;
Este ejemplo trunca una tabla llamada proveedores en un esquema llamado totn. Antes de poder truncar una tabla en otro esquema, debe tener los privilegios necesarios, como DROP ANY TABLE.