Esta inquietud se puede resolver de diversas maneras, por lo tanto te enseñamos la solución más completa para nosotros.
Solución:
Puedes evitar el
debe ser la primera declaración en un archivo por lotes
error sin agregar sentencias GO poniendo el sql dentro de un comando EXEC:
Sql(EXEC('BEGIN CREATE FUNCTION etc'))
Referencia:
https://stackoverflow.com/a/20352867/150342
Tienes que generar tu código y ejecutarlo como sql dinámico.
DECLARE @Sql NVARCHAR(MAX)
SET @Sql =
'
IF OBJECT_ID(''fn_Test'') IS NOT NULL DROP FUNCTION fn_Test
GO
CREATE FUNCTION fn_Test(@a INT)
RETURNS INT
BEGIN
RETURN @a
END
'
IF 1 = 1
BEGIN
EXEC(@Sql)
END
Te mostramos las comentarios y valoraciones de los lectores
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)