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

Por contributor

Paso 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).


Paso 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.


Paso 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;