SQL Server - Only one expression can be specified in the select

 
Vista:

Only one expression can be specified in the select

Publicado por Regina (9 intervenciones) el 03/04/2007 00:26:07
hola estoy intentando hacer un sp que envié un correo con todos los datos que estan en una tabla que cumplan con determinada condición, pero me marca el siguiente error: "Only one expression can be specified in the select"

lo que estoy haciendo es asignar a una variable el resultado de un select hacia la tabla con la condición establecida y es ahi dond me marca el error

es obvio que tengo mal estructurada la consulta... pero no se me ocurre como hacerla de manera correcta... espero que alguno de ustedes me pueda ayudar!!


CREATE PROCEDURE sp_envia_mail
@cmbPlantaMDI int

AS

DECLARE @body varchar(500)
DECLARE @consulta varchar(500)

SET @consulta = (SELECT * FROM tcad_Modificados WHERE status_mail = 0) --Aki es donde truena

BEGIN

SET @body = 'La tabla "tcad_Prueba" de la base de datos CAD ha sufrido las siguientes modificaciones: '+@consulta

IF (@cmbPlantaMDI = 1)
EXEC master.dbo.xp_sendmail
@recipients = '[email protected];[email protected]',
@subject = 'Notificación Automática',
@mensaje = @body



IF (@cmbPlantaMDI = 2)
EXEC master.dbo.xp_sendmail
@recipients ='[email protected];[email protected]', @subject = 'Notificación Automática',
@mensaje = @body

IF (@cmbPlantaMDI = 3)
EXEC master.dbo.xp_sendmail
@recipients = '[email protected];[email protected]',
@subject = 'Notificación Automática',
@mensaje = @body

IF (@cmbPlantaMDI = 4)
EXEC master.dbo.xp_sendmail
@recipients = '[email protected];[email protected]',
@subject = 'Notificación Automática',
@mensaje = @body

Update tcad_Modificados
SET status_mail = 1
WHERE status_mail = 0

RETURN

END
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Only one expression can be specified in the sel

Publicado por Isaías (3308 intervenciones) el 03/04/2007 02:25:04
¿Y que es lo que te da el SELECT que publicas?

SELECT * FROM tcad_Modificados WHERE status_mail = 0

Digo, si son VARIOS REGISTROS, con VARIOS CAMPOS, es claro que NO lo puedes colocar en una SIMPLE VARIABLE.

Te aconsejo que lo EXPORTES a una hoja excel o bien a un archivo texto separado por algun caracter y lo envies como ANEXO del correo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar