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°`°º¤ø,¸¸,ø¤º°

Preguntas similare

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:

Mostrar la cita
#2 Isaias
07/09/2007 - 19:46 | Informe spam
Gustavo

Aprovechando el post, fijate que yo tuve la necesidad de hacer lo mismo,
utilizar USE con variable, lo resolvi, ejecutando T-SQL mediante OSQL y me
funciono a la perfeccion.

1.- Crear Base de datos (desde master), nombre variable
2.- Cambiarme a esa base de datos (USE).
3.- Crear objetos (tablas, vistas, store) y copiar datos de otra base


Saludos
IIslas


"Gustavo Larriera (MVP)" wrote:

Mostrar la cita
Ads by Google
Search Busqueda sugerida