ENVIAR CORREOS (e-mails) DESDE SQL SERVER 2008 R2


Muchas veces nos encontramos en la tarea de realizar una campaña agresiva de mailing, y de hecho hay diversas opciones, sin embargo con SQL server podemos quizá darle algún valor añadido, dada la simplicidad e inteligencia al momento de envió de emails, los mismo que lógicamente pueden estar en tablas de nuestra misma BD y de esta manera podemos programar envíos, saludos,  novedades,

PASO 1: Configurar nuestro servidor: en la parte de Management + Database Mail  Clic  derecho y seleccionar la opción Configure Database Mail

 

clip_image002

 Ahora en la pantalla Database Mail Configuration Wizarda Seleccionamos la primera opción de configuración y Siguiente (next)

 clip_image004}


 Escribimos el nombre y decripcion  del perfil a crear, recordemos que podemos tener mas de un perfil,  y Clic en el boton Add (agregar) y posteriormente en Next (Siguiente )

clip_image006

 En esta pantalla ingresamos los campos pertinentes, tales como:

Nombre de nuestra cuenta anteriormente,  Dirección de email a usar para envíos, SERVER NAME, y credenciales, como verán por defecto tenemos seleccionado a puerto 25 y demás opciones según el escenario, este es un escenario básico.

..

Next (siguiente)

 clip_image008

 

Como veremos ya tenemos creado uestro Profile, le damos en Next

clip_image010

 Ahora  tenemos una Ultima configuración, y quizá una de las as sensibles (luego del nombre de  email, password y servidor claro está )

Aquí podemos configurar el numero de intentos , el tiempo en que se dan el tamaño máximo y cosas por el estilo

clip_image012

Next y Finish …

clip_image014

clip_image016

 PASO 2: PROBANDO ENVIO

Realizar una prueba es sencilla, basta con seleccionar la opción Send Text E-Mail

clip_image018

 

Darle la dirección de email a enviar y listo Send Test E-Mail:

clip_image020

 Por ultimo solo revisar nuestra bandeja  ¡!

 clip_image022

 Ahora el lio es que si llega a la bandeja de NO DSEADOS, ese ya es otro asunto que trataremos en un siguiente post.

 Lo importante es que  con esta funcionabilidad de SQL server podemos enviar emails a todos nuestros contactos dependiendo de la lógica que estimemos conveniente.

  

PASO 3. FORMA DE INVOCAR EL ENVIO:


Solo realizamos una nueva consuta desde SQL Server y listo !!!

 EXEC  msdb.dbo.sp_send_dbmail @profile_name=‘Perfilsuscriptores’
                                                                                       
@recipients= ‘nombre@hotmail.com’,
                                                          
@subject= ‘Prueba de envio esde SQL Server R2’,
                                                          
@body= ‘Aqui va el contenido o cuerpo del e-mail’

 

Obviamente estamos ahora preparados para enviar correos  a nuestros suscriptores (ojo no dije SPAM, y no jueguen con esto sino banearan sus cuentas), desde SQL Server  R2 

 

 Algunos links, que pueden revisar:

http://msdn.microsoft.com/es-es/library/ms189505.aspx

 http://msdn.microsoft.com/en-us/library/ms190307.aspx

http://technet.microsoft.com/es-es/library/ms190658.aspx

https://partner.microsoft.com/argentina/40088754

Saludos

John Suarez

23 pensamientos en “ENVIAR CORREOS (e-mails) DESDE SQL SERVER 2008 R2

  1. como siempre ingenioso, XD , es verdad la simplicidad ayuda en la mayoria de veces.
    muy buena salida para los problemas y retos tecnologicos el mailing es administrado muy bien por SQLServer. bien jugado Ing Jhon Suarez

  2. Hola, no funcionó esto, creo que el problema es la configuración del servidor de mi empresa. Por favor dime cómo borro la configuración del Database Mail que acabo de crear??
    Gracias!!

    • Si lo estas haciendo desde tu empresa e snormal que sucedan estas cosas, debes hablar con el administrador de REd., es cuestion de politicas de seguridad, seria bueno que te abra los puertos pertinentes.

      Ahora si quieres solo debes suprimir lo creado
      salu2

      JOhn

  3. Me gustaria que hables un poco mas sobre los puertos ….que configuracion se deben de tener encuenta, antivirus, servicios, firewall, agente sql…etc..

  4. Hola

    Interesante lo probe y me envia a todos los correos menos a los hotmail, Este es el error que me arroja

    The mail could not be sent to the recipients because of the mail server failure. (Enviando mensaje de correo electrónico utilizando la cuenta 3 (2013-03-19T16:21:27). Mensaje de excepción: Cannot send mails to mail server. (Mailbox unavailable. The server response was: 5.1.1 The email account that you tried to reach does not exist. Please try). )

    Aceptaria que el correo estuviese mas escrito pero da la casualidad que siempre falla con los correos hotmail, las otras extensiones si le envia el correo.

      • Lo que te digo, en la lista q envío hay 10 correos 5 hotmail 3 gmail y 2 yahoo y solo no envía a los hotmail y ya probe con correos hot válidos. No sera alguna configuración. Enviado desde mi BlackBerry de Claro.

      • Si eso es cierto!

        Puede suceder que los servidores de correo de los cuales estas enviando, se encuentren baneados por el servidor de hotmail

        Esto sucede siempre, sobre todo en cuentas rentadas de hosting, es un medio de defensa

    • Hola

      Te funciono para cualquier cuenta de correo, si deseas enviarlo cada 5 minutos elabora un job y alli ejecuta el sp que envia los correos elctronicos.

  5. Buen Día se te agradece mucho que me fue de mucha ayuda esto pero ahora tengo un problema tengo correos en espera pero quisiera saber como los libero. Gracias.

Deja un comentario