SQLサーバーのDBメール設定および送信 |  にせうさブログ

SQLサーバーのDBメール設定および送信

SQL Serverは2005以降メールがデータベースから送信できる。

ただし初期設定でService Brokerが

SQL Server2005:無効

SQL Server2008:有効

となっているのでSQL Server2005の場合有効にしないといけない。

確認方法

SELECT [name],is_broker_enabled FROM sys.databases

のSQL文実行。

1:有効

0:無効

ここでmsdbが0:無効となっている場合に

ALTER DATABASE msdb SET ENABLE_BROKER

をSQL文実行。これでBROKERは有効化。

※逆に無効化は ALTER DATABASE msdb SET DISABLE_BROKER


かつmsdbのDatabaseMailUserRoleにユーザー追加しておく。


メール送る時は、

EXEC msdb.dbo.sp_send_dbmail

@profile_name=N'SQLmail',

@recipient=N'メールアドレス',

@subject='題名'.

@body='本文',

@body_format=N'TEXT'

をSQL文実行する。


ただ・・・送るとメールはUTF-8です。エンコードは別の手で考えるように

しないとだめです。