Necesito tomar datos de una variable cuyo nombre tengo guardado en otra variable. SQL

En un store procedure debo llamar a otro sp por ejemplo:

Exec sp_executesql @NombSP ,@DefParam ,@x1,@x2,@x3 , @importeQ output,@CantidadQ output

En realidad @x1,@x2 y @x3 pueden ser diferentes datos.

En una tabla tengo : @NombreDeX1, @NombreDeX2,@NombreDeX3

Por lo que debo reemplazar @x1 con lo que tenga en la variable @NombreDeX1

, reemplazar @x2 con lo que tenga en la variable @NombreDeX2 ,reemplazar @x3 con lo que tenga en la variable @NombreDeX3

¿Alguien sabe cómo hacerlo

2 respuestas

Respuesta

¿Puedes explicar más la lógica que necesitas implantar? No entiendo muy bien lo de reemplazar. Ya que con solo hacer una asignación seria suficiente.

@x1:=@NombreDeX1;

Yo supongo que lo que te refieres es mediante el x1 hacer un query y obtener el nombreDeX1.

Eso seria:

Begin

select nombredex1 into x1 from nombres where x1 = campoTabla

end;

SELECT  n
INTO miPAIS
FROM PAISES
WHERE CO_PAIS = 27;

SELECT  n
INTO miPAIS
FROM PAISES
WHERE CO_PAIS = 27;

es que el SP  NOMBSP  va a tomar el contenido de @x1 como dato y en realidad no es un dato sino el nombre de una variable.

Debo hacer que pase el dato de esa variable.

Okey creo entender que deseas. Lo que debes hacer es mandar el nombre de la variable. Dentro del SP hacer un select a la tabla que contenga el dato del nombre de la variable.

Respuesta
-1

@NombreDeX1, @NombreDeX2,@NombreDeX3  <- Son valores de la tabla, en tu procedimiento tienes que regresar estos datos y al ternerlos debes de guardarlos en una variable.
A partir de esto, ya puedes interactuar con los resultados de tu primer procedimiento.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas