Anuncios

Bienvenidos sean a este post, hoy veremos como eliminar tablas de nuestras bases.

Anuncios

Pasemos a ver su sintaxis completa:

DROP [TEMPORARY] TABLE [IF EXISTS] [/* comentario para guardar */]
    nombreTabla [,nombreTabla, nombre...]
    [WAIT n | NOWAIT]
    [RESTRICT | CASCADE];
Anuncios
Nota: 
Todas las anotaciones entre corchetes son opcionales.
Anuncios

En este caso tenemos varias opciones pero primero vamos a hablar sobre la forma mas basica para eliminar tablas:

DROP TABLE tabla1;
Anuncios

Con esta sola opcion eliminaremos la tabla informada, de esta forma recuerdan primero usar la base (USE) para ingresar a la misma y poder eliminar a la tabla, si lo ejecutamos veremos esta salida:

MariaDB [base1]> DROP TABLE tabla1;
Query OK, 0 rows affected (0.044 sec)

MariaDB [base1]>
Anuncios

Aunque para esta ejecucion tenemos dos modificadores interesantes:

  • TEMPORARY, nos servira para decirle que debe eliminar una tabla temporal antes de cerrar sesion
  • IF EXISTS, sirve para verificar que la tabla a eliminar exista
Anuncios

Otra opcion es que podemos eliminar mas de una tabla, simplemente agregando una coma con la otra tabla y asi todas las que sean necesarias, veamos que sucede si intentamos eliminar una tabla que no existe:

MariaDB [base1]> DROP TABLE tabla1;
ERROR 1051 (42S02): Unknown table 'base1.tabla1'
MariaDB [base1]>
Anuncios

Para evitar esto vamos a usar el condicional que tenemos pero a su vez vamos a intentar eliminar otra tabla tambien:

DROP TABLE IF EXISTS tabla1, tabla2;
Anuncios

En este caso agregamos el condicional pero tambien agregamos la otra tabla que deseamos eliminar, si lo ejecutamos veremos lo siguiente:

MariaDB [base1]> DROP TABLE IF EXISTS tabla1, tabla2;
Query OK, 0 rows affected, 1 warning (0.040 sec)

MariaDB [base1]>
Anuncios

Observen como el query se ejecuto ok pero nos da un aviso (warning) y este sera la tabla que no encontro pero siguio trabajando y elimino la otra tabla informada, recuerden que podemos pasar todas las tablas que queramos y por cada una chequeara si existe o no, veamos las opciones siguientes:

  • WAIT n, establece el valor que debe esperar el comando por el tiempo de bloqueo de espera antes de fallar
  • NOWAIT, falla directamente si no puede obtener este bloqueo
  • RESTRICT, sirve para facilitar la migracion desde otros sistemas de bases de datos, en MariaDB no tiene efecto
  • CASCADE, idem al anterior y tampoco tiene efecto en MariaDB
Anuncios

Por ultimo un tema que no mencionamos como fue el comentario que podemos agregar, este sirve para agregarlo en el log binario, su funcion es simplemente dejar una evidencia de porque se elimino dicha tabla o tablas, no tiene otra funcion adicional.

Anuncios

En resumen, hoy hemos visto como eliminar tablas, como es, para que sirve, su funcion mas basica y alguna un poco mas compleja que nos puede facilitar ciertas tareas y por ultima algunas opciones interesantes que posee, al igual que en DROP DATABASE mucho cuidado al utilizarlo porque si no poseen el backup correcto perderan mucho tiempo de trabajo, espero les haya sido de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Donación

Es para mantenimento del sitio, gracias!

$1.50