Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

macro sql

Estas en el tema de macro sql en el foro de SQL Server en Foros del Web. Hola, deseo construir como si fuera una macro una sentencia que ejecute un select dependiendo de la vista que el usuario seleccione, algo asi DECLARE ...
  #1 (permalink)  
Antiguo 22/01/2008, 15:40
 
Fecha de Ingreso: enero-2003
Mensajes: 13
Antigüedad: 22 años
Puntos: 0
macro sql

Hola, deseo construir como si fuera una macro una sentencia que ejecute un select dependiendo de la vista que el usuario seleccione, algo asi

DECLARE
@nombrevista varchar(100)

select @nombrevista = 'dbo.V_CONTRATOS_APROBADOS_NOREFRENDADOS'

select * from @nombrevista

Cuando lo ejecuto el SQL me dice Must declare the variable '@nombrevista'

Ayuda
  #2 (permalink)  
Antiguo 22/01/2008, 16:56
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 18 años, 1 mes
Puntos: 8
Re: macro sql

que tal alfredo.

Debe ser así:

Código:
DECLARE @nombrevista varchar(100)
DECLARE @sql varchar(100)

set @nombrevista = 'dbo.V_CONTRATOS_APROBADOS_NOREFRENDADOS'

set @sql =  ' select * from '  + @nombrevista 

EXEC @sql
Saludos
  #3 (permalink)  
Antiguo 23/01/2008, 14:22
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Re: macro sql

Solo cambia el EXEC @sql, ya que este no sera soportado en versiones superiores, por: EXEC sp_executesql @sql, esta, debe ser una variable tipo NVARCHAR
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:46.