CONCATENAR CADENA SQL...

11/10/2005 - 22:33 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.

Esto es lo que quiero concatenar, pero en lugar del usuario MONISA ( FROM
EXACTUS.MONISA.EMPLEADO
), quiero poner le usuario que le pase como parametro en @psCompania

INSERT INTO OCEXACTUS.DBO.INSS_DETALLE
SELECT ASEGURADO, EMPLEADO, NOMBRE_PILA, PRIMER_APELLIDO, NOMINA,
"01",@pdPeriodo, 0, 0, 0, "1111",CENTRO_COSTO, "P"
FROM EXACTUS.MONISA.EMPLEADO
WHERE NOMINA BETWEEN @psNominaI AND @psNominaF AND ACTIVO="S" AND
ESTADO_EMPLEADO="ACT"

Gracias de antemano por sus comentarios.

Edmundo J. Davila

Preguntas similare

Leer las respuestas

#1 Maxi
11/10/2005 - 22:49 | Informe spam
Sip, usando SQL-dinamico (sp_executesql)pero deberas saber que no es una
buena practica de programacion :(


Salu2
Maxi [MVP SQL SERVER]


"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.

Esto es lo que quiero concatenar, pero en lugar del usuario MONISA ( FROM
EXACTUS.MONISA.EMPLEADO
), quiero poner le usuario que le pase como parametro en @psCompania

INSERT INTO OCEXACTUS.DBO.INSS_DETALLE
SELECT ASEGURADO, EMPLEADO, NOMBRE_PILA, PRIMER_APELLIDO, NOMINA,
"01",@pdPeriodo, 0, 0, 0, "1111",CENTRO_COSTO, "P"
FROM EXACTUS.MONISA.EMPLEADO
WHERE NOMINA BETWEEN @psNominaI AND @psNominaF AND ACTIVO="S" AND
ESTADO_EMPLEADO="ACT"

Gracias de antemano por sus comentarios.

Edmundo J. Davila


Respuesta Responder a este mensaje
#2 Edmundo J. Davila
12/10/2005 - 00:16 | Informe spam
Pq no es una buena practica?

"Maxi" escribió en el mensaje
news:%23$
Sip, usando SQL-dinamico (sp_executesql)pero deberas saber que no es una
buena practica de programacion :(


Salu2
Maxi [MVP SQL SERVER]


"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.

Esto es lo que quiero concatenar, pero en lugar del usuario MONISA (
FROM EXACTUS.MONISA.EMPLEADO
), quiero poner le usuario que le pase como parametro en @psCompania

INSERT INTO OCEXACTUS.DBO.INSS_DETALLE
SELECT ASEGURADO, EMPLEADO, NOMBRE_PILA, PRIMER_APELLIDO, NOMINA,
"01",@pdPeriodo, 0, 0, 0, "1111",CENTRO_COSTO, "P"
FROM EXACTUS.MONISA.EMPLEADO
WHERE NOMINA BETWEEN @psNominaI AND @psNominaF AND ACTIVO="S" AND
ESTADO_EMPLEADO="ACT"

Gracias de antemano por sus comentarios.

Edmundo J. Davila






Respuesta Responder a este mensaje
#3 Gustavo Larriera [MVP]
12/10/2005 - 00:31 | Informe spam
Lee esto:

Las virtudes y maldades del SQL dinámico
http://www.hayes.ch/sql/sql_dinamico.html

Gustavo Larriera
Uruguay LatAm
Blog: http://sqljunkies.com/weblog/gux/
MVP profile: http://aspnet2.com/mvp.ashx?GustavoLarriera
Este mensaje se proporciona "COMO ESTA" sin garantias y no otorga ningun
derecho / This posting is provided "AS IS" with no warranties, and confers
no rights.
"Edmundo J. Davila" wrote in message
news:
Pq no es una buena practica?

"Maxi" escribió en el mensaje
news:%23$
Sip, usando SQL-dinamico (sp_executesql)pero deberas saber que no es una
buena practica de programacion :(


Salu2
Maxi [MVP SQL SERVER]


"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.

Esto es lo que quiero concatenar, pero en lugar del usuario MONISA (
FROM EXACTUS.MONISA.EMPLEADO
), quiero poner le usuario que le pase como parametro en @psCompania

INSERT INTO OCEXACTUS.DBO.INSS_DETALLE
SELECT ASEGURADO, EMPLEADO, NOMBRE_PILA, PRIMER_APELLIDO, NOMINA,
"01",@pdPeriodo, 0, 0, 0, "1111",CENTRO_COSTO, "P"
FROM EXACTUS.MONISA.EMPLEADO
WHERE NOMINA BETWEEN @psNominaI AND @psNominaF AND ACTIVO="S" AND
ESTADO_EMPLEADO="ACT"

Gracias de antemano por sus comentarios.

Edmundo J. Davila










Respuesta Responder a este mensaje
#4 Rolando escobar
12/10/2005 - 04:29 | Informe spam
Construye la sentencia sql en forma dinámica y haz un exec(cadena)...

saludos
rolando escobar
www.interdata.cl

"Edmundo J. Davila" escribió:

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.

Esto es lo que quiero concatenar, pero en lugar del usuario MONISA ( FROM
EXACTUS.MONISA.EMPLEADO
), quiero poner le usuario que le pase como parametro en @psCompania

INSERT INTO OCEXACTUS.DBO.INSS_DETALLE
SELECT ASEGURADO, EMPLEADO, NOMBRE_PILA, PRIMER_APELLIDO, NOMINA,
"01",@pdPeriodo, 0, 0, 0, "1111",CENTRO_COSTO, "P"
FROM EXACTUS.MONISA.EMPLEADO
WHERE NOMINA BETWEEN @psNominaI AND @psNominaF AND ACTIVO="S" AND
ESTADO_EMPLEADO="ACT"

Gracias de antemano por sus comentarios.

Edmundo J. Davila



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida