stringtranslate.com

Eliminar (SQL)

En el lenguaje de consulta estructurado de bases de datos ( SQL ), la declaración DELETE se utiliza para eliminar uno o más registros de una tabla . Se puede definir un subconjunto para su eliminación mediante una condición; de lo contrario, se eliminan todos los registros. [1] Algunos sistemas de gestión de bases de datos (DBMS), como MySQL , permiten la eliminación de filas de varias tablas con una declaración DELETE (esto a veces se denomina DELETE de varias tablas).

Ejemplos

Elimine filas de pasteles de mesa donde el sabor de la columna sea igual a Merengue de limón :

BORRAR DE pasteles DONDE sabor = 'Merengue de limón' ;    

Elimine filas en árboles , si el valor de altura es menor que 80.

ELIMINAR DE árboles DONDE altura < 80 ;      

Eliminar todas las filas de mytable :

ELIMINAR DE mitabla ;  

Elimine filas de mytable usando una subconsulta en la condición donde:

ELIMINAR DE mytable DONDE id EN ( SELECCIONAR id DE mytable2 );           

Elimine filas de mytable usando una lista de valores:

ELIMINAR DE mytable DONDE id EN ( valor1 , valor2 , valor3 , valor4 , valor5 );            

Ejemplo con tablas relacionadas

Supongamos que hay una base de datos simple que enumera personas y direcciones. Más de una persona puede vivir en una dirección particular y una persona puede vivir en más de una dirección (este es un ejemplo de una relación de muchos a muchos ). La base de datos solo tiene tres tablas, persona , dirección y pa , con los siguientes datos:

La tabla pa relaciona las tablas de personas y direcciones, mostrando que Joe, Bob y Ann viven todos en 2001 Main Street, pero Joe también fija su residencia en Pico Boulevard.

Para eliminar a Joe de la base de datos, se deben ejecutar dos eliminaciones:

 ELIMINAR DE persona DONDE pid = 1 ; BORRAR DE pa DONDE pid = 1 ;         

Para mantener la integridad referencial, los registros de Joe deben eliminarse tanto de la persona como de su padre . Podría ser que más allá de tener solo tres tablas, la base de datos también se haya configurado con un activador para que cada vez que se elimine una fila de person , todas las filas vinculadas se eliminen de pa . Luego la primera declaración:

 ELIMINAR DE persona DONDE pid = 1 ;    

activaría automáticamente el segundo:

 BORRAR DE pa DONDE pid = 1 ;    

Características

Comandos relacionados

Eliminar todas las filas de una tabla puede llevar mucho tiempo. Algunos DBMS [ se necesita aclaración ] ofrecen un comando TRUNCATE TABLE que funciona mucho más rápido, ya que solo altera los metadatos y normalmente no dedica tiempo a imponer restricciones o activar activadores.

DELETE solo elimina las filas. Para eliminar una tabla por completo, se puede utilizar el comando DROP .

Referencias

  1. ^ "Declaración de eliminación de SQL". w3schools.com.

enlaces externos