Variable en un select (2010-05-21)

21/05/2010 - 10:29 por Mauricio | Informe spam
Hola a todos,
es una pregunta algo estúpida la que voy a hacer y sé que la podría
resolver de otras maneras pero quiero saber si se puede como lo pensé.
En un script tengo que ejecutar varios SELECT (el SELECT no lo
escribí yo sino que me lo pasaron de un programador anterior).
Un ejemplo:

SELECT * FROM MCS_HILLEROD.dbo.AFDOD

Como verán, el nombre de la base de datos está escrito (y así en
cada línea). Pensé entonces que declarando una variable podía hacer
algo así:

DECLARE @MyDatabase as VARCHAR(20)
SET @MyDatabase = 'MCS_HILLEROD'

SELECT * FROM @MyDatabase.dbo.AFDFO
GO

Pero, obviamente, esto me da error. Cómo sería la sintaxis correcta?
Gracias desde ya.

Mauricio
Copenhague, Dinamarca
 

Leer las respuestas

#1 Gina Solís
24/05/2010 - 05:38 | Informe spam
Busca en la ayuda el store procedure :

sp_executeSQL


"Mauricio" wrote in message
news:
Hola a todos,
es una pregunta algo estúpida la que voy a hacer y sé que la podría
resolver de otras maneras pero quiero saber si se puede como lo pensé.
En un script tengo que ejecutar varios SELECT (el SELECT no lo escribí
yo sino que me lo pasaron de un programador anterior).
Un ejemplo:

SELECT * FROM MCS_HILLEROD.dbo.AFDOD

Como verán, el nombre de la base de datos está escrito (y así en cada
línea). Pensé entonces que declarando una variable podía hacer algo así:

DECLARE @MyDatabase as VARCHAR(20)
SET @MyDatabase = 'MCS_HILLEROD'

SELECT * FROM @MyDatabase.dbo.AFDFO
GO

Pero, obviamente, esto me da error. Cómo sería la sintaxis correcta?
Gracias desde ya.

Mauricio
Copenhague, Dinamarca


Preguntas similares