Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Uzyskaj listę kont pocztowych bazy danych w SQL Server (T-SQL)

W SQL Server możesz użyć sysmail_help_account_sp procedura składowana w msdb bazy danych, aby pobrać listę wszystkich kont poczty bazy danych.

Możesz również zwrócić informacje o koncie na podstawie jego nazwy lub identyfikatora konta.

Przykład

Oto przykład do zademonstrowania.

EXEC msdb.dbo.sysmail_help_account_sp;

Wynik (przy użyciu wyjścia pionowego):

account_id              | 1
name                    | DB Admin
description             | Mail account for admin emails.
email_address           | [email protected]
display_name            | DB Automated Mailer
replyto_address         | [email protected]
servertype              | SMTP
servername              | smtp.example.com
port                    | 25
username                | NULL
use_default_credentials | 0
enable_ssl              | 0

Wymieniłem wyniki za pomocą wyjścia pionowego, dzięki czemu nie musisz przewijać na boki, aby zobaczyć wszystkie kolumny.

W moim przypadku jest tylko jedno konto poczty bazy danych.

Pamiętaj, że sysmail_help_account_sp procedura składowana znajduje się w msdb bazy danych i jest własnością dbo schemat. Dlatego będziesz musiał użyć trzyczęściowego nazewnictwa (jak w moim przykładzie), jeśli msdb nie jest bieżącą bazą danych.

Zwróć tylko jedno konto

Mimo że mam tylko jedno konto pocztowe bazy danych w moim systemie, oto przykład, jak zwrócić jedno konto.

Jak wspomniano, możesz użyć nazwy konta lub jego identyfikatora. Oto przykład zwracania go według identyfikatora konta:

EXEC msdb.dbo.sysmail_help_account_sp
    @account_id = 1;

Musisz podać identyfikator konta jako int .

A oto przykład zwracania go według nazwy:

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

Nazwa konta to sysname .

Konto jest nieważne?

Podanie nieistniejącego identyfikatora konta zwraca następujący błąd:

Msg 14606, Level 16, State 1, Procedure msdb.dbo.sysmail_verify_account_sp, Line 33
account id is not valid

Podanie nazwy konta, która nie istnieje, zwraca następujący błąd:

Msg 14607, Level 16, State 1, Procedure msdb.dbo.sysmail_verify_account_sp, Line 42
account name is not valid

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Znajdź indeks ostatniego wystąpienia podciągu za pomocą T-SQL

  2. Jak rzucić DateTime na czas?

  3. Dostawca OLE DB „Microsoft.Jet.OLEDB.4.0” nie może być używany do zapytań rozproszonych

  4. Jaki jest punkt początkowego katalogu w parametrach połączenia programu SQL Server?

  5. Jak określić lokalizację plików danych i plików dziennika podczas tworzenia bazy danych w SQL Server