Validando la existencia de tablas en la base de datos



Validando la existencia de tablas en la base de datos

Muchas veces necesitamos saber si existe una tabla en base de datos para tomar una acción, ya sea eliminarla, modificarla o agregarla, para saber si existe empleamos una instrucción que nos provee SQL Server la cual nos brinda información acerca de la estructura que tenemos (esquema de base de datos), esta instrucción es INFORMATION_SCHEMA, y se usa de la siguiente manera:


Select *
from INFORMATION_SCHEMA.TABLES


Esto nos muestra todas las tablas existentes en nuestra base de datos, basta entonces con usar la instrucción where para ver si existe específicamente lo que queremos encontrar, de la siguiente manera:


Select *
from INFORMATION_SCHEMA.TABLES
where table_name = 'Categorias'


Este código nos ubica unicamente la tabla “Categorias” si existe en la base de datos. Si quisiera buscar mas de un registro entonces debo emplear la instrucción IN en el where:


Select *
from INFORMATION_SCHEMA.TABLES
where table_name in ('Categorias','Area')


Entonces si quisiéramos ver si una tabla existe usamos la instrucción exists de la siguiente manera:


if exists(Select * from INFORMATION_SCHEMA.TABLES where table_name = 'Categorias')
print 'Existe'
else
print 'No existe'


Hay que tomar en cuenta que el ejemplo usa solo una linea de código, si quisiéramos mas de una linea tendríamos que encerrar el resultado de la condición if en Begin y end.

Comentarios

Entradas populares de este blog

Conocer la cantidad de un carácter específico en una cadena de texto

Consultas dinámicas

Funciones para análisis Lag y Lead