CONCATENAR EXPRESION SQL...

11/10/2005 - 20:08 por Edmundo J. Davila | Informe spam
Hola amig@s:

¿Es posible pasar parte de una expresion T-SQL como parametro de un
procedimiento almacenado? Por ejemplo:

SELECT * FROM BASE_DATOS.@psUSUARIO.NOMBRE_TABLA WHERE

donde @psUsuario sería el nombre del usuario que creo NOMBRE_TABLA en
BASE_DATOS. Lo hice pero me dio error, tal vez es de sintaxis, pero no le
encuentro, lo he probado de varias formas.

Gracias de antemano por sus comentarios.

Edmundo J. Davila
 

Leer las respuestas

#1 Octavio Telis Aynés
11/10/2005 - 20:27 | Informe spam
Veamos esto desde SQL Server:

Lo que expones sería hacer algo como esto:

Declare @psUsuario varchar(10)
set @psUsuario = 'dbo'

Select * From


Esto causa un error, sin embargo existe la necesidad de utilizar la variable
para cambiar de usuario en un momento dado, ahora bien, analicemos el
siguiente listado:

Declare @psUsuario varchar(10)
set @psUsuario = 'dbo'

Exec('Select * From Northwind.'+ @psUsuario +'.Categories')


Este listado no cauda error y se puede utlizar la variable para la tarea que
necesitamos.

En fin, ya en el SP, habría que implementar algo semejante sin perder el uso
del parámetro @psUsuario


Espero sea de utilidad.

Saludos...

Octavio Telis Aynés
http://otelis.blogspot.com


"Edmundo J. Davila" escribió en el mensaje
news:
Hola :

¿Es posible pasar parte de una expresion T-SQL como parametro de un
procedimiento almacenado? Por ejemplo:

SELECT * FROM WHERE

donde @psUsuario sería el nombre del usuario que creo NOMBRE_TABLA en
BASE_DATOS. Lo hice pero me dio error, tal vez es de sintaxis, pero no le
encuentro, lo he probado de varias formas.

Gracias de antemano por sus comentarios.

Edmundo J. Davila


Preguntas similares