- [DEVEXPRESS] Chia sẻ code các tạo report in nhiều hóa đơn trên XtraReport C#
- [POWER AUTOMATE] Hướng dẫn gởi tin nhắn zalo từ file Excel - No code
- [C#] Chia sẻ code lock và unlock user trong domain Window
- [SOFTWARE] Giới thiệu bộ phần mềm tính Kết Cấu Thép HatteSale, Mộng Đơn, Dầm, Sàn, Móng Cọc, Vách, Xà Gồ, Tính Tải Trọng
- [DEVEXPRESS] Vẽ Biểu Đồ Stock Chứng Khoán - Công Cụ Thiết Yếu Cho Nhà Đầu Tư trên Winform
- [C#] Hướng dẫn bảo mật ứng dụng 2FA (Multi-factor Authentication) trên Winform
- [C#] Hướng dẫn convert HTML code sang PDF File trên NetCore 7 Winform
- [C#] Hướng dẫn viết ứng dụng chat với Gemini AI Google Winform
- Hướng dẫn khóa file bằng nhiều process id, không cho xóa tập tin
- Hướng dẫn cách tạo Product Id cho ứng dụng phần mềm XXXXX-XXXXX-XXXXX-XXXXX
- [SQLSERVER] Hướng dẫn tạo script sql từ ứng dụng Sqlserver management Studio
- [C#] Hướng dẫn sử dụng thư viện AutoITx lấy id và password Ultraviewer trên winform
- [VB.NET] Hướng dẫn lấy thông tin tài khoản đăng nhập windows và khởi động lại ứng dụng ở chế độ Administrator
- [C#] Sử dụng thư viện Polly gửi lại request api khi request bị lỗi hay rớt mạng
- [DEVEXPRESS] Chia sẻ source code tạo báo cáo report in tem nhãn label trên C# winform
- [DEVEXPRESS] Hướng dẫn vẽ biểu đồ Bar Chart trên Winform
- [C#] Tạo form đăng nhập và đăng ký với hiệu ứng Sliding Animation Effect
- [C#] Hướng dẫn tạo thanh toán đơn hàng qua mã vạch VietQR sử dụng API PayOS hoàn toàn miễn phí
- [C#] Hướng dẫn ghi log ra RichTextBox giống Console trên Winform sử dụng thư viện Serilog
- [C#] Hướng dẫn cách tạo mã QR Code trên file Excel
[SQLSERVER] Hướng dẫn cấu hình và gởi email bằng câu lệnh Sqlserver
Xin chào các bạn, bài viết hôm nay mình sẽ tiếp tục hướng dẫn các bạn cách cấu hình và gởi email trong Sqlserver.
Database Mail là sự thay thế cho SQL Mail với nhiều cải tiến. Vì vậy, ta nên ngừng sử dụng SQL Mail và nâng cấp lên Database Mail.
Để gửi thư bằng Database Mail trong SQL Server, có 3 bước cơ bản cần phải được thực hiện:
- Create Profile and Account
- Configure Email
- Send Email
Bước 1: Create profile and Account
Tiếp theo
Tiếp tục chọn Next, và hộp thoại hiện ra => Ở hình dưới mình chọn mục đầu tiên để bắt đầu tạo profile cho email.
Ở hình này, các bạn nhập tên profile name, và nhấn nút Add để tạo mới account cho profile
Tiếp theo ở hình bên dưới, mình sẽ nhập các thông tin của tài khoản email mình vào, ở ví dụ bên dưới là mình sử dụng tài khoản Gmail để thực hiện.
OK, đến bước này các bạn cứ nhấn Next để hoàn tất phần cấu hình profile.
Bước 2: Configure Email
Sau khi Create profile and account thành công, chúng ta cần phải cấu hình Database Mail. Để cấu hình nó, chúng ta cần phải kích hoạt tham số Database Mail XPS thông qua stored procedure sp_configure
, như bên dưới:
sp_CONFIGURE 'show advanced', 1
GO
RECONFIGURE
GO
sp_CONFIGURE 'Database Mail XPs', 1
GO
RECONFIGURE
GO
=> Kết quả
Bước 3: Send Email
Sau khi thực hiện cấu hình xong, việc gửi một email đã sẵn sàng.
Trước tiên, chúng ta cần phải thực hiện một stored procedure sp_send_dbmail và cung cấp đủ các tham số cần thiết như hình dưới đây:
USE msdb
GO
EXEC sp_send_dbmail @profile_name='laptrinhvb',
@recipients='hoangtunho2015@gmail.com',
@subject='Test message',
@body=N'Hướng dẫn gởi email trong sqlserver. https://laptrinhvb.net'
Sau khi tất cả các tham số đã được xác thực done , stored procedures được thực thi và các mail được xếp vào queued bởi Service Broker.
=> kết quả sau khi gởi email, mình mở Gmail lên kiểm tra email đến hay chưa.
Check config send mail trên SQL
EXEC msdb.dbo.sysmail_help_configure_sp;
EXEC msdb.dbo.sysmail_help_account_sp;
EXEC msdb.dbo.sysmail_help_profile_sp;
EXEC msdb.dbo.sysmail_help_profileaccount_sp;
EXEC msdb.dbo.sysmail_help_principalprofile_sp;
Check profile mail
SELECT * FROM msdb.dbo.sysmail_profile
Database Mail sẽ giữ bản sao của e-mail gửi đi và hiển thị chúng trong sysmail_allitems
, sysmail_sentitems
, sysmail_sentitems
, sysmail_faileditems
.
Tình trạng của các mail gửi có thể được nhìn thấy trong bảng sysmail_mailitems
.
Khi email được gửi thành công, các field sent_status trong bảng sysmail_mailitems
sẽ gán = 1, cái này cũng có thể được nhìn thấy trong bảng sysmail_sentitems
.
Các email gửi thất bại field sent_status
sẽ có giá trị = 2 và những trường hợp chưa gửi sẽ có giá trị = 3. Các bản ghi có thể được kiểm tra trong bảng sysmail_log
như hình dưới đây:
SELECT * FROM sysmail_mailitems GO
SELECT * FROM sysmail_log GO
Tình trạng có thể được xác nhận sử dụng bảng sysmail_sentitems.
HAVE FUN