Tengo esta consulta que si lanzo desde un ASP me funciona perfecta.
SELECT NOMBRE + ' ' + APELLIDOS AS cliente FROM CONTRATOS where GRUPO1= '
" & grupo & " ' OR GRUPO2 = ' " & grupo & "'
El problema es que quiero meterlo dentro de un Procedimiento almacenado que
recibe un parametro VARCHAR (@Grupo) y resulta que no hay dios de armar la
consulta por las comillas. Tengan en cuenta que el parámetro @grupo puede
llevar espacios y guiones. ¿cómo concateno tanta comilla sin error?
CREATE PROCEDURE CONSULTA @GRUPO VARCHAR(50) AS
DECLARE @CONSULTA VARCHAR(500)
SET @CONSULTA=SELECT NOMBRE + ' ' + APELLIDOS AS cliente FROM CONTRATOS
where GRUPO1="'" + @G + "'" OR GRUPO2 = "'" + @G +
EXEC(@CONSULTA)
GO
Lo mismo me pasa para devolver concatenado el nombre y el apellido. No veo
manera de que no me salte error. Sé que el problema son las comillas.
gracias
****************************************************************************
*
CREATE PROCEDURE CONSULTA @GRUPO VARCHAR(50) AS
SELECT NOMBRE + ' ' + APELLIDOS AS cliente FROM CONTRATOS
WHERE GRUPO1= @G OR GRUPO2 = @G
****************************************************************************
*
No es necesario ejecutar dinámicamente la consulta para lo que necesitas
--
--
--
Un saludo
--
--
----------------------------------------------
"Sólo sé que no sé nada. " (Sócrates)
Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL
"Jomaweb" <bro...@nosmpam.teleline.es> escribió en el mensaje
news:Owy2CQjQ...@TK2MSFTNGP12.phx.gbl...
Debo de poder concatenar comillas.
Por ejemplo, cuando grupo es "madrid - sector centro", sino lo concateno me
da error en el guión.
"Carlos Sacristan" <csacristan ARROBA mvps.org> escribió en el mensaje
news:%23%23zJZTjQ...@TK2MSFTNGP12.phx.gbl...
EXEC consulta '''madrid-centro'''
--
--
--
Un saludo
--
--
----------------------------------------------
"Sólo sé que no sé nada. " (Sócrates)
Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL
"Jomaweb" <bro...@nosmpam.teleline.es> escribió en el mensaje
news:OM1xiOlQ...@TK2MSFTNGP09.phx.gbl...
1) Creando la tabla y poblando de datos
create table contratos ( nombre varchar(30),
apellidos varchar(30),
grupo1 varchar(30),
grupo2 varchar(30) )
go
insert into contratos
select 'NOMBREA', 'APELLIDOA' ,'MADRID - GRUPO
CENTRO', 'OTRO'
insert into contratos
select 'NOMBREB', 'APELLIDOB' ,'OTRO', 'MADRID - GRUPO
CENTRO'
go
2) creando el ´procedimiento almacenado :
CREATE PROCEDURE CONSULTA @GRUPO VARCHAR(50)
AS
SELECT NOMBRE + ' ' + APELLIDOS AS cliente FROM CONTRATOS
WHERE GRUPO1= @GRUPO OR GRUPO2 = @GRUPO
3) ejecutandolo
exec consulta 'madrid - grupo centro'
te obtiene el resultado que deseas :
cliente
--------------------
NOMBREA APELLIDOA
NOMBREB APELLIDOB
(2 row(s) affected)
no veo que el guion afecte para nada la consulta, lo que
veo en la consulta que has enviando es que no has
terminado de encerrar la comilla ni definir la variable
@g, lo que tienes definido es la variable @grupo, no sé si
eso es el problema o has enviando un extracto de tu
consulta.
Saludos,
Ulises
>-----Mensaje original-----