Comando Use con una Variable

07/09/2007 - 16:57 por Daniel H. Villa | Informe spam
Hola compañeros:

en la Version 2000 de SQL Server, quiero hacer esto:

declare @ls_user varchar(50),
@ls_BD varchar(50)
set @ls_user = 'morning_user'
set @ls_BD = SUBSTRING(@ls_user, 1, len(@ls_user)-5)



use @ls_BD


Sin embargo no me funciona, como puedo hacerle que mi variable donde tengo
el nombre de la Base de Datos
me haga el Use

Salu2 Cordiales

¸,ø¤º°`°º¤ø,¸ L.I. Daniel H. Villa°`°º¤ø,¸¸,ø¤º°
 

Leer las respuestas

#1 Gustavo Larriera (MVP)
07/09/2007 - 17:34 | Informe spam
T-SQL no es un lenguaje con macrosustitución, por lo tanto este tipo de cosas
NO SE PUEDEN HACER:

USE @BASE
SELECT * from @TABLA
etc...

Para ese tipo de técnica de programación hay que usar SQL dinámico. Lea
acerca del tema acá:

Las virtudes y maldades del SQL dinámico
http://www.hayes.ch/sql/sql_dinamico.html

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/p...o.Larriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Daniel H. Villa" wrote:

Hola compañeros:

en la Version 2000 de SQL Server, quiero hacer esto:

declare @ls_user varchar(50),
@ls_BD varchar(50)
set @ls_user = 'morning_user'
set @ls_BD = SUBSTRING(@ls_user, 1, len(@ls_user)-5)



use @ls_BD


Sin embargo no me funciona, como puedo hacerle que mi variable donde tengo
el nombre de la Base de Datos
me haga el Use

Salu2 Cordiales

¸,ø¤º°`°º¤ø,¸ L.I. Daniel H. Villa°`°º¤ø,¸¸,ø¤º°



Preguntas similares