miércoles, 28 de marzo de 2012

¿Cómo saber si existe una tabla en la BD?

¿Cómo saber si existe una tabla en nuestra BD? Podemos crear y usar la sig función.

Para mandar llamar la funcion

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE FUNCTION [dbo].[existeTabla]
(
    @cTableName VARCHAR(255)
)
RETURNS BIT
AS
BEGIN
    DECLARE @nReturn BIT
    SET @nReturn = 0

    IF (SELECT COUNT(*) FROM SYS.OBJECTS
        WHERE TYPE = 'U' AND UPPER(NAME) = UPPER(@cTableName)) > 0 BEGIN
        SET @nReturn = 1
    END
   
    RETURN @nReturn
END

Para mandar llamar la funcion podemos usar el siguiente query:
SELECT [dbo].[existeTabla] ('TABLA_A_BUSCAR')

Si el resultado es 1 la tabla existe, en caso contrario no existe.


No hay comentarios: