sql >> Base de Datos >  >> RDS >> Database

Soltar vs Truncar en SQL

En este artículo, aprenderemos y comprenderemos los comandos Soltar y Truncar y la diferencia entre estos dos comandos.

¿Qué es Drop Command?

Drop es un comando del lenguaje de definición de datos en el lenguaje de consulta estructurado. El comando Soltar en SQL se utiliza para eliminar o eliminar la definición de la tabla, la base de datos, los índices, la vista, los activadores y las restricciones de datos de las tablas de la base de datos.

En el lenguaje de consulta estructurado, el comando soltar se utiliza para eliminar los elementos del sistema de administración de bases de datos relacionales (RDBMS).

El comando Eliminar puede revertir los datos una vez que se ejecuta, pero los comandos Soltar no pueden revertir los datos una vez que se ejecuta. El comando Soltar se utiliza para liberar memoria donde se almacena el espacio de la tabla porque los comandos Soltar eliminan la tabla y su contenido de forma permanente.

El comando Soltar es rápido en comparación con el comando truncar en el lenguaje de consulta estructurado. Pero, el tiempo de ejecución del comando soltar es lento porque tiene muchas complicaciones.

Para eliminar una o más columnas de la tabla, usamos el comando soltar con el comando ALTER TABLE.

La sintaxis del comando DROP para eliminar la base de datos es la siguiente:

DROP DATABASE Database_Name;

En la sintaxis anterior, tenemos que especificar el nombre de la base de datos que queremos eliminar del sistema.

Nota:- Tenga cuidado antes de usar el comando DROP para eliminar la base de datos porque los comandos de eliminación eliminan todos los objetos de la base de datos como tablas, índices, vistas, disparadores creados en la base de datos.

La sintaxis para eliminar la tabla es la siguiente:

DROP TABLE Table_Name;

En la sintaxis anterior, debemos especificar el nombre de la tabla que queremos eliminar de la base de datos.

La sintaxis para eliminar varias tablas de la misma base de datos en una sola instrucción es la siguiente:

DROP TABLE table1, table2, table3;

Podemos eliminar varias tablas de la misma base de datos utilizando la sintaxis anterior.

La sintaxis para eliminar el índice es la siguiente:

DROP INDEX Index_Name;

Tenemos que especificar el nombre del índice en la sintaxis anterior justo después de la palabra clave del índice.

La sintaxis para eliminar la vista es la siguiente:

DROP VIEW View_Name;

Tenemos que especificar el nombre de la vista en la sintaxis anterior justo después de la palabra clave Ver.

La sintaxis para eliminar la restricción de la tabla mediante ALTER TABLE es la siguiente:

ALTER TABLE Table_Name DROP CONSTRAINT Constraint_Name;

Usando el comando ALTER TABLE en el SQL, podemos eliminar la restricción de la tabla.

Ejemplo de comando DROP:

Tomaremos algunos ejemplos usando el comando DROP.

Paso 1: Cree una base de datos o use una base de datos existente. Usaremos dos bases de datos para el comando DROP.

Paso 2: Cree una nueva tabla o use una tabla, índice o vista existente.

Ejemplo 1: Escriba una consulta para colocar la tabla Students_information de la base de datos de la escuela.

Primero seleccionaremos la base de datos de la escuela usando la palabra clave USE seguida del nombre de la base de datos.

USE School;

Escribiremos el comando drop para eliminar la tabla de información_estudiantes de la base de datos seleccionada.

Considere la tabla Students_information con los siguientes registros:

Student_Id Nombre_del_estudiante Curso_Estudiante Student_Marks
1 Anjali BCOM 85
2 Pranav BCA 80
3 Yogesh B.E 88
4 Bhushan MBA 95
5 Poonam MCOM 97
6 Bhavesh B.E 90
7 Khushi BSC 94
8 Piyush BCOM 75
9 Nikita BA 88
10 Aishwariya BSC 70
DROP TABLE Students_Information;

Hemos descartado la tabla de información_estudiantes con todos los registros presentes dentro de la tabla de la consulta anterior.

Para verificar si la consulta se ejecutó con éxito o no, ejecutaremos la consulta SELECT.

SELECT * FROM Students_Information;

A medida que ejecutamos la consulta de selección en la tabla de información_Estudiantes, se muestra el mensaje de que la tabla no existe, lo que significa que la consulta del comando Soltar en la tabla de información_Estudiantes se ejecutó correctamente.

Ejemplo 2: Escriba una consulta para eliminar la vista manager_view1 de la base de datos de la empresa.

Considere la vista manager_view1 con los siguientes registros:

ID DE ADMINISTRADOR NOMBRE_GERENTE DEPARTAMENTO_GERENTE
1 Snehdeep Kaur ORACULO
3 Abhishek Manish JAVA

Escribiremos el comando drop para eliminar la vista manager_view1 de la base de datos seleccionada.

DROP VIEW Manager_view1;

Eliminamos la vista manager_view1 de la consulta anterior con todos los registros presentes dentro de la vista.

Para verificar si la consulta se ejecutó con éxito o no, ejecutaremos la consulta SELECT.

SELECT * FROM Manager_view1;

A medida que ejecutamos la consulta de selección en la vista manager_view1, se muestra el mensaje de que la vista no existe, lo que significa que la consulta del comando Soltar en la vista manager_view1 se ejecutó correctamente.

Ejemplo 3: Escriba una consulta para eliminar la base de datos de Cricket del sistema.

Antes de ejecutar el comando drop para la base de datos, primero ejecutamos el comando show databases para verificar al final del comando drop que eliminamos correctamente la base de datos de Cricket del sistema.

SHOW DATABASES;
Base de datos
Revisar
Empresa
Críquet
Empleado
Esquema_de_información
Mysql
Esquema_de_rendimiento
Phpmyadmin
Escuela
Prueba
WordPress

Arriba están las bases de datos que ya existen en el sistema; eliminaremos la base de datos de Cricket del sistema. Eliminar la base de datos significa eliminar todos los objetos presentes dentro de la tabla, vista, índice, activadores, etc. de la base de datos.

Ahora, ejecutaremos una consulta para descartar la base de datos de Cricket.

DROP DATABASE Cricket;

Hemos ejecutado la consulta de caída en la base de datos de Cricket. Para comprobar si la base de datos se ha eliminado correctamente o no, ejecutaremos la consulta SHOW DATABASES.

SHOW DATABASES;
Base de datos
Revisar
Empresa
Empleado
Esquema_de_información
Mysql
Esquema_de_rendimiento
Phpmyadmin
Escuela
Prueba
WordPress

Como puede ver, la base de datos de cricket se eliminó del sistema con éxito.

Ejemplo 4: Escriba una consulta para eliminar la columna de apellido de la tabla de empleados.

ALTER TABLE employee DROP Last_Name;

Hemos eliminado la columna Last_Name de la tabla de empleados usando el comando DROP con el comando ALTER en la consulta anterior.

Campo Tipo Nulo Clave Predeterminado Extra
ID DE EMPLEADO int(11) NO PRI NULO
FIRST_NAME varchar(20) SI NULO
SALARIO int(11) SI NULO
CIUDAD varchar(20) SI NULO
DEPARTAMENTO varchar(20) SI NULO
ID DE ADMINISTRADOR int(11) SI NULO

El resultado anterior muestra que Last_Name se eliminó de la tabla de empleados.

¿Qué es Truncar comando?

Truncar es otro comando del lenguaje de definición de datos en el lenguaje de consulta estructurado. El comando Truncar se usa para eliminar todos los registros de la tabla. Como el comando DROP, pero el comando TRUNCATE no contiene una cláusula WHERE. El comando Truncar es más rápido que los comandos DROP y DELETE. No podemos revertir los registros como el comando DROP después de usar el comando TRUNCATE.

Sintaxis del comando TRUNCATE en SQL:

TRUNCATE TABLE tablename;

En la sintaxis anterior, debemos mencionar el nombre de la tabla cuyos datos queremos eliminar de la tabla.

Tomaremos algunos ejemplos usando el comando TRUNCATE.

Ejemplo de comando TRUNCATE:

Paso 1: Cree una base de datos o use una base de datos existente.

Paso 2: Cree una nueva tabla o use una tabla existente.

Considere la tabla existente con los siguientes registros:

Tabla:Empleado:

ID DE EMPLEADO FIRST_NAME APELLIDO SALARIO CIUDAD DEPARTAMENTO ID DE ADMINISTRADOR
1001 VAIBHAVI MISHRA 65500 PUNE ORACULO 1
1002 VAIBHAV SHARMA 60000 NOIDA C# 5
1003 NIKHIL VANI 50500 JAIPUR FMW 2
2001 PRACHI SHARMA 55500 CHANDIGARH ORACULO 1
2002 BHAVESH JAÍN 65500 PUNE FMW 2
2003 RUCHIKA JAÍN 50000 BOMBAY C# 5
3001 PRANOTI SHENDE 55500 PUNE JAVA 3
3002 ANUJA WANRE 50500 JAIPUR FMW 2
3003 DEEPAM JAUHARI 58500 BOMBAY JAVA 3
4001 RAJESH GOUD 60500 BOMBAY PRUEBA 4
4002 ASHWINI BAGHAT 54500 NOIDA JAVA 3
4003 RUCHIKA AGARWAL 60000 DELHI ORACULO 1
5001 ARCHIT SHARMA 55500 DELHI PRUEBA 4

Ejemplo: Escriba una consulta para eliminar todos los registros de la tabla de empleados usando el comando truncar.

TRUNCATE TABLE Employee;

Hemos eliminado todos los registros de la consulta anterior de la tabla de empleados.

Para verificar si todos los registros de la tabla de empleados se eliminaron o no, ejecutaremos la consulta SELECT en la tabla de empleados.

SELECT * FROM Employee;
ID DE EMPLEADO FIRST_NAME APELLIDO SALARIO CIUDAD DEPARTAMENTO ID DE ADMINISTRADOR

A medida que ejecutamos la consulta de selección en la tabla de empleados, se muestra el mensaje de conjunto vacío, lo que significa que el comando truncar en la tabla de empleados se ejecutó correctamente.

Los siguientes puntos muestran la diferencia entre el comando Soltar y el comando Truncar en el lenguaje de consulta estructurado:

El comando DROP El comando TRUNCATE
El comando DROP elimina la estructura de la tabla y los registros de la tabla. El comando TRUNCATE elimina todos los registros de la tabla.
El comando DROP es un comando del lenguaje de definición de datos. El comando TRUNCATE también es un comando del lenguaje de definición de datos.
En el comando DROP, el espacio de tabla está libre de memoria El comando TRUNCATE no libera el espacio de tabla de la memoria.
La vista de tabla no existe en el comando DROP La vista de tabla existe en el comando TRUNCATE
En el comando DROP, no podemos usar borrar espacio. En el comando TRUNCATE, podemos usar el espacio de eliminación pero menos que en la instrucción DELETE.
En el comando DROP, las restricciones de integridad se eliminarán automáticamente de la tabla. Las restricciones de integridad no se eliminarán de la tabla en el comando TRUNCATE.
El comando DROP elimina los registros rápidamente, pero hay muchas complicaciones. El comando TRUNCATE es más rápido que el comando DROP.