Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Liệt kê các tài khoản được liên kết với cấu hình thư cơ sở dữ liệu trong SQL Server

Trong SQL Server, bạn có thể sử dụng sysmail_help_profileaccount_sp thủ tục được lưu trữ trên msdb cơ sở dữ liệu để truy xuất danh sách tất cả các liên kết giữa các tài khoản và cấu hình Thư cơ sở dữ liệu.

Bạn cũng có thể trả lại thông tin tài khoản dựa trên tên / ID tài khoản hoặc tên / ID hồ sơ.

Trả lại tất cả các liên kết

Để trả về tất cả các liên kết, chỉ cần thực hiện thủ tục đã lưu trữ mà không có bất kỳ tham số nào.

EXEC msdb.dbo.sysmail_help_profileaccount_sp;

Kết quả (sử dụng đầu ra dọc):

profile_id      | 1
profile_name    | DB Admin Profile
account_id      | 1
account_name    | DB Admin
sequence_number | 1

Tôi đã liệt kê các kết quả bằng cách sử dụng đầu ra dọc để bạn không phải cuộn sang ngang để xem tất cả các cột.

Trong trường hợp của tôi, chỉ có một liên kết và do đó, chỉ một hàng được trả về.

Lưu ý rằng sysmail_help_profileaccount_sp thủ tục được lưu trữ trong msdb cơ sở dữ liệu và thuộc sở hữu của dbo lược đồ. Do đó, bạn sẽ cần sử dụng cách đặt tên gồm ba phần if msdb không phải là cơ sở dữ liệu hiện tại.

Dựa trên Tên / ID tài khoản

Bạn có thể thu hẹp nó xuống chỉ còn một tài khoản bằng cách chuyển tên tài khoản hoặc ID làm tham số.

Tên tài khoản là tên của tài khoản được tạo bằng sysmail_add_account_sp thủ tục được lưu trữ trong msdb cơ sở dữ liệu.

Đây là cách chuyển tên tài khoản:

EXEC msdb.dbo.sysmail_help_profileaccount_sp
    @account_name = 'DB Admin';

Và đây là cách chuyển ID:

EXEC msdb.dbo.sysmail_help_profileaccount_sp
    @account_id = 1;

Lưu ý rằng @account_id được cung cấp dưới dạng int .

Dựa trên Tên / ID Hồ sơ

Ngoài ra, bạn có thể thu hẹp nó xuống chỉ một hồ sơ duy nhất bằng cách chuyển tên hồ sơ hoặc ID làm tham số.

Đây là cách chuyển tên hồ sơ:

EXEC msdb.dbo.sysmail_help_profileaccount_sp
    @profile_name = 'DB Admin Profile';

Và đây là cách chuyển ID hồ sơ:

EXEC msdb.dbo.sysmail_help_profileaccount_sp
    @profile_id = 1;

Lưu ý rằng @profile_id được cung cấp dưới dạng int .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2005 - Xuất bảng theo chương trình (chạy tệp .sql để xây dựng lại nó)

  2. Tại sao lại sử dụng mệnh đề INCLUDE khi tạo chỉ mục?

  3. Trả lại danh sách các bảng từ một máy chủ được liên kết trong SQL Server (ví dụ T-SQL)

  4. Kiểm tra xem một bảng có khóa ngoại trong SQL Server với OBJECTPROPERTY () hay không

  5. “Lỗi nghiêm trọng kết nối nội bộ” khi thực thi một quy trình được lưu trữ được biên dịch hoàn toàn trong SQL Server 2019 (Lỗi đã biết)