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です。エンコードは別の手で考えるように
しないとだめです。