sql >> Database teknologi >  >> RDS >> Sqlserver

Få en liste over databasepostkonti i SQL Server (T-SQL)

I SQL Server kan du bruge sysmail_help_account_sp gemt procedure på msdb database for at hente en liste over alle Database Mail-konti.

Du kan også returnere kontooplysninger baseret på dens kontonavn eller id.

Eksempel

Her er et eksempel til at demonstrere.

EXEC msdb.dbo.sysmail_help_account_sp; 

Resultat (ved hjælp af lodret output):

konto_id | 1 navn | DB Adminbeskrivelse | Mailkonto til admin emails.email_address | [email protected]_name | DB Automated Mailerreplyto_address | [email protected] | SMTP-servernavn | smtp.example.comport | 25brugernavn | NULLuse_default_credentials | 0enable_ssl | 0

Jeg har angivet resultaterne ved hjælp af lodret output, så du ikke behøver at rulle sidelæns for at se alle kolonner.

I mit tilfælde er der kun én Database Mail-konto.

Bemærk, at sysmail_help_account_sp gemt procedure er i msdb databasen, og den ejes af dbo skema. Derfor skal du bruge tredelt navngivning (som i mit eksempel), hvis msdb er ikke den aktuelle database.

Returnering kun én konto

Selvom jeg kun har én database-mailkonto på mit system, er her et eksempel på, hvordan man returnerer en enkelt konto.

Som nævnt kan du bruge kontonavnet eller dets ID. Her er et eksempel på at returnere det efter konto-id:

EXEC msdb.dbo.sysmail_help_account_sp
    @account_id = 1; 

Du skal angive konto-id'et som en int .

Og her er et eksempel på at returnere det ved navn:

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

Kontonavnet er sysname .

Kontoen er ikke gyldig?

Angivelse af et konto-id, der ikke eksisterer, returnerer følgende fejl:

Besked 14606, niveau 16, tilstand 1, procedure msdb.dbo.sysmail_verify_account_sp, linje 33-konto-id er ikke gyldigt

Angivelse af et kontonavn, der ikke eksisterer, returnerer følgende fejl:

Besked 14607, niveau 16, tilstand 1, procedure msdb.dbo.sysmail_verify_account_sp, linje 42 kontonavn er ikke gyldigt

  1. Oracle:indlæse en stor xml-fil?

  2. Oracle:SQL-forespørgsel for at finde alle de triggere, der hører til tabellerne?

  3. Hvordan finder man porten til MS SQL Server 2008?

  4. Sådan fungerer Degrees()-funktionen i PostgreSQL