Burak IŞIKLI :))

SQL Server ile “İyiki Doğdun :)” Mesajı Göndermek

Posted in SQL Server by Burak IŞIKLI on 23 Nisan 2009

Eğer benim gibi unutkan biriyseniz, bu metodu kullanarak bundan böyle arkadaşlarınızın doğumgününü unutmayacaksınız.

İlk olarak SQL Server Agent Service’i ve Database Mail hizmetlerini kullanmayı bilmelisiniz. Bununla ilgili daha önceki yazılarımı okuyarak öğrenebilirsiniz.
SQL Server Agent Service ile ilgili yazım için link ve Database Mail ile ilgili yazım için link

SQL Server Agent Service job görev tanımlamaya dayalıdır(job schedule) Doğumgününü hatırlamak için kullanacağınız görev şu:


DECLARE @email nvarchar(50), @birthday date
DECLARE emailCursor CURSOR FOR
SELECT email, birthday FROM test;
OPEN emailCursor;
FETCH NEXT FROM emailCursor INTO @email, @birthday
WHILE (@@FETCH_STATUS = 0)
BEGIN
IF(DATEDIFF(DD, DAY(@birthday),DAY(GETDATE()))=0) AND
(DATEDIFF(DD, MONTH(@birthday),MONTH(GETDATE()))=0)
BEGIN
EXEC msdb.dbo.sp_send_dbmail
@profile_name='Test',
@recipients=@email,
@body='Happy birthday to you!...',
@body_format='HTML',
@subject='Happy Birthday';
END
FETCH NEXT FROM emailCursor INTO @email, @birthday
END
CLOSE emailCursor
DEALLOCATE emailCursor
GO

Elimizde bir tane tablomuz olacaktır. Bu tabloda en az 3 adet sütun(id, email, birthday-dateofbirth) olacaktır. Satır sayısı sınırsızdır. Bu tabloyu oluşturduktan sonra, oluşturduğunuz görevi(job) çalıştırmaya başlayın(execute).  O arka planda çalışırken herhangi bir kişinin yani arkadaşınızın doğumgünü geldiğinde farkına varacak ve ona belirlediğiniz doğumgünü mesajını gönderecektir. Hepsi bu🙂

3 Yanıt

Subscribe to comments with RSS.

  1. gurcan yavuz said, on 27 Nisan 2009 at 20:13

    yok sql server kuracam aman cep telefonuma kaydederim bir de mesaj attım mı tamamdır.

  2. Burak IŞIKLI said, on 27 Nisan 2009 at 22:11

    İşte mesaj yazmana gerek kalmadan o senin yerine mesajı yazıyor ve atıyor. Hem unutma derdin de olmuyor bir denersen bir daha vazgeçemezsin🙂

  3. arzu said, on 30 Aralık 2009 at 10:43

    burak bey bu güzel bilgileri paylaştığınız için teşekkür ederim.


Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: