En MySQL, puede eliminar datos con la misma facilidad con la que puede consultarlos o actualizarlos.
SQL DELETE
Declaración
Usa el SQL DELETE
declaración para eliminar datos de su base de datos. Como el SELECT
y UPDATE
sentencias, el DELETE
declaración acepta un WHERE
cláusula para que pueda especificar los registros exactos que desea eliminar.
Sintaxis
DELETE FROM table_name WHERE column_name = value;
Ejemplo
-
Los datos
Aquí están los datos antes de que eliminemos nada.
-
Eliminar algunos datos
Eliminemos las uvas rojas de nuestra lista de frutas. A las uvas rojas se les ha asignado un FruitId de
5
entonces lo usaremos en nuestroDELETE
declaración.DELETE FROM Fruit WHERE FruitId = 5;
-
El resultado
Si ejecutamos el código anterior, luego seleccionamos todas las filas de la tabla, podemos ver que el registro ha sido eliminado.
Eliminar todos los registros
Puede eliminar todos los registros de una tabla con bastante facilidad. En realidad, es más fácil eliminar todos registros que eliminar un registro específico.
-
El Código
Para eliminar todos registros en una tabla, simplemente omita el
WHERE
cláusula. Así:DELETE FROM Fruit;
-
El resultado
Ups... ¡No más registros!
Como puede imaginar, vale la pena tener mucho cuidado al usar DELETE
declaración. Aquí es donde el modo de Actualizaciones seguras puede ayudar (como cubrimos al actualizar nuestros datos).
Resulta que solo pude ejecutar la declaración anterior después de deshabilitar el modo de Actualizaciones seguras. Entonces, antes de ejecutar esa declaración, ejecuté el siguiente comando:
SET SQL_SAFE_UPDATES = 0;
Así que ahora es probablemente un buen momento para que vuelva a habilitar las Actualizaciones seguras, antes de que cause más daño...
SET SQL_SAFE_UPDATES = 1;
Restaurar los datos
Ahora que hemos borrado todos los registros de Fruit tabla, veamos si podemos restaurarlos a su valor original. Afortunadamente para nosotros, previamente escribimos un script para insertar datos en nuestras tablas.
-
El Código
Así que eliminemos el bit que llena la Fruit table y ejecutar eso:
INSERT INTO Fruit VALUES (1,'Apple',10,1,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (2,'Orange',5,2,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (3,'Banana',20,6,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (4,'Watermelon',10,1,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (5,'Grapes',15,6,'2015-02-15 10:30:00','2015-02-15 10:30:00'), (6,'Strawberry',12,7,'2015-02-15 10:30:00','2015-02-15 10:30:00');
-
El resultado
Ahora nuestra tabla debería tener el mismo aspecto que antes, cuando inicialmente completamos los datos.