Cómo eliminar la tabla de una base de datos sólo si ya existe

Escrito por ehow contributor | Traducido por maria della cella figueredo
  • Comparte
  • Twittea
  • Comparte
  • E-mail

Si utilizas una base de datos por bastante tiempo, probablemente llegará el momento en que quieras eliminar una tabla si ya existe. A menudo la razón por la que querrás hacer esto es porque necesitas crear una tabla y no quieres toparte con un error cuando intentas crearla debido a que el nombre de la tabla ya existe. Sea cual sea tu motivo, puedes eliminar una tabla existente en MySQL, Microsoft SQL y Oracle.

Nivel de dificultad:
Moderado

Otras personas están leyendo

Necesitarás

  • Oracle, MySQL o Microsoft SQL Server

Lista completaMinimizar

Instrucciones

  1. 1

    MySQL fue lo suficientemente amable al crear esta herramienta y hacer que sea sencillo eliminar una tabla existente. Para eliminar una tabla con un nombre no deseado " Drop_Me" ejecuta la siguiente búsqueda:

    DROP TABLE IF EXISTS Drop_Me

    (por sus términos en inglés, eliminar tabla si "Drop_me" ya existe).

  2. 2

    Microsoft SQL hace que sea un poco más difícil eliminar una tabla si ya existe. Para lograr esto, necesitarás usar una frase If (condicional si) y la función EXISTS (existe):

    IF EXISTS(SELECT 1 FROM sys.objects WHERE OBJECT_ID = OBJECT_ID(N'Drop_Me') AND type = (N'U')) DROP TABLE Drop_Me

    (por sus términos en inglés, si existe(seleccionar 1 desde sys.objetcs donde object_id = object_id(N'Drop_Me") y escribe = (N'U')) eliminar tabla Drop_Me.

  3. 3

    Oracle lleva la complejidad de eliminar una tabla existente a otro nivel. En esta codificación de muestra, necesitarás conocer el nombre del dueño de la tabla, que en este caso es "Me" (yo):

    DECLARE v_count NUMBER :=0; BEGIN SELECT COUNT(*) INTO v_count FROM all_tables WHERE table_name='Drop_Me' AND owner='Me'; IF v_count = 1 THEN EXECUTE IMMEDIATE 'DROP TABLE Me.Drop_Me'; END IF; END;

    (Por sus términos en inglés, DECLARAR v_count Número :=0; Comienza Selecciona COUNT(*) en v_count desde todas_tablas DONDE nombre_tabla='Drop_Me' y owner='Me'; Si v_count = 1 Entonces Ejecuta 'DROP TABLE Me.Drop_Me'; Terminar si; FIN;

Consejos y advertencias

  • Es probable que otras bases de datos tengan una sintaxis completamente diferentes para eliminar una tabla existente.
  • Asegúrate de que realmente quieras eliminar la tabla antes de ejecutar uno de estos comandos. No se te solicitará una confirmación.

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles