Crear objetos en otra base del mismo servidor

14/10/2005 - 06:23 por Lean_ | Informe spam
Buenas gente,
necesito hacer un stored procedure que compile objetos de otra base de datos
del mismo servidor.

Probe compilar el objeto con sql dinamico pero no puedo usar un "USE base
Create Proc ". Me aparece el error "CREATRE PROCEDURE must be the first
statement in a query batch."

Este es el codigo con el que estoy probando:

Declare
@FUENTE nvarchar(4000),
@BD_NAME sysname

Declare @sql nvarchar(4000)

Set @FUENTE = 'Create Procedure prueba as Select 1'
Set @BD_NAME = 'model'

Set @sql = 'Use ' + @BD_NAME + ' ' + @FUENTE + ' Go'

Exec (@sql)

Go

obtengo el resultado:
Server: Msg 111, Level 15, State 1, Line 1
'CREATE PROCEDURE' must be the first statement in a query batch.


Un abrazo y gracias.
 

Leer las respuestas

#1 Maxi \(MVP SQL\)
15/10/2005 - 19:41 | Informe spam
Hola, te falta el GO

Set @sql = 'Use ' + @BD_NAME + ' go ' + @FUENTE + ' Go'

Sabes que SQL dinamico no es una buena tecnica no? poque quieres usar
sql-dinamico?

-
MS-MVP SQL SERVER
"Lean_" escribió en el mensaje
news:
Buenas gente,
necesito hacer un stored procedure que compile objetos de otra base de
datos
del mismo servidor.

Probe compilar el objeto con sql dinamico pero no puedo usar un "USE base
Create Proc ". Me aparece el error "CREATRE PROCEDURE must be the
first
statement in a query batch."

Este es el codigo con el que estoy probando:

Declare
@FUENTE nvarchar(4000),
@BD_NAME sysname

Declare @sql nvarchar(4000)

Set @FUENTE = 'Create Procedure prueba as Select 1'
Set @BD_NAME = 'model'

Set @sql = 'Use ' + @BD_NAME + ' ' + @FUENTE + ' Go'

Exec (@sql)

Go

obtengo el resultado:
Server: Msg 111, Level 15, State 1, Line 1
'CREATE PROCEDURE' must be the first statement in a query batch.


Un abrazo y gracias.

Preguntas similares