Untuk mengirim email menggunakan Database Mail di SQL Server, pengguna harus menjadi anggota DatabaseMailUserRole di msdb database, dan memiliki akses ke setidaknya satu profil Database Mail.
Untuk memberikan akses pengguna ke profil Database Mail dengan T-SQL, gunakan sysmail_add_principalprofile_sp
prosedur tersimpan di msdb
basis data.
Contoh
Berikut ini contoh untuk didemonstrasikan.
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'DB Admin Profile',
@principal_name = 'Marge',
@is_default = 1;
Dalam hal ini saya memberikan akses “Marge” kepada pengguna ke profil “Profil Admin DB”.
Ini mengasumsikan bahwa profil dan pengguna sudah ada.
Dalam hal ini saya juga menentukan @is_default = 1
, yang menjadikan ini sebagai profil default bagi pengguna.
Tentukan ID Pengguna/Profil
Sebagai alternatif, Anda dapat menentukan ID pengguna dan/atau ID akun alih-alih namanya.
Oleh karena itu, kita dapat mengubah contoh sebelumnya menjadi seperti ini:
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_id = 1,
@principal_id = 25,
@is_default = 1;
Ini jelas mengasumsikan bahwa itu adalah ID untuk akun yang dimaksud.
Perhatikan bahwa nama atau ID harus diberikan.
Selain itu, saat memberikan ID, ID tersebut diberikan sebagai int .
Perhatikan bahwa sysmail_add_principalprofile_sp
prosedur tersimpan ada di msdb
database, dan itu dimiliki oleh dbo
skema. Oleh karena itu, Anda harus menggunakan penamaan tiga bagian jika Anda menjalankannya dari luar msdb
basis data.
Profil Publik
Anda juga dapat menjadikan profil sebagai profil publik default untuk pengguna di msdb basis data.
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'DB Public Profile',
@principal_name = 'public',
@is_default = 1;
Untuk membuat profil publik, tentukan @principal_id
dari 0
atau @principal_name
dari public
. Profil publik tersedia untuk semua pengguna di msdb database (walaupun pengguna juga harus menjadi anggota DatabaseMailUserRole untuk mengeksekusi sp_send_dbmail
).
Perhatikan bahwa hanya ada satu profil publik default.
Mengonfigurasi Email Basis Data
Langkah-langkah di atas mengasumsikan bahwa Anda telah membuat profil Database Mail dan menambahkan setidaknya satu akun Database Mail ke profil itu.
Lihat Cara Mengirim Email di SQL Server untuk contoh lengkap konfigurasi Database Mail, lalu mengirim email.