SQL esborrat

De Cacauet Wiki
Dreceres ràpides: navegació, cerca

Per esborrar necessitarem la comanda DELETE.

IMPORTANT: hem de ser molt curosos amb aquesta comanda perquè podem eliminar fàcilment totes les entrades d'una taula. Això succeeix si no posem la clàusula WHERE.

El format resumit seria aquest

DELETE FROM <nom_taula>
WHERE <condició>;

Si oblidem posar el WHERE eliminarem totes les dades de la taula.

Quan ens cal eliminar diverses entrades d'una taula convé començar una transacció que ens ajudarà a recuperar les dades si fem alguna cosa malament.

Per exemple, si tenim la taula de les assignatures vistes a l'exercici de creació de taules, podem fer:

mysql> DELETE FROM assignatures WHERE id_assignatura=3;

i si ens diu que OK, voldrà dir que haurem eliminat l'assignatura que té per id_assignatura el número 3.

També podem eliminar totes les assignatures de la ESO, però millor que no ho feu!

mysql> DELETE FROM assignatures WHERE titulacio="ESO";

O bé totes les assignatures de 2n d'ESO:

mysql> DELETE FROM assignatures WHERE assignatura LIKE "%2n ESO%";