Udostępnij za pośrednictwem


xp_deletemail (języka Transact-SQL)

Usuwa wiadomości z Microsoft SQL Server skrzynki odbiorczej.Procedura ta jest używana przez sp_processmail do przetwarzania poczty w SQL Server skrzynki odbiorczej.

Ostrzeżenie

Ta funkcja zostanie usunięta z przyszłej wersji programu Microsoft SQL Server. Należy unikać stosowania tej funkcji w nowych projektach oraz zaplanować modyfikację aplikacji, w których obecnie jest używana ta funkcja.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

xp_deletemail { 'message_id' }

Argumenty

  • 'message_id'
    Jest zastrzeżoną numer komunikatu (przypisany przez xp_findnextmsg) wiadomości w Skrzynce odbiorczej, która powinna zostać usunięta.message_idjest varchar(255), z braku domyślne.

Wartości kodów powrotnych

0 (sukces) lub 1 (błąd)

Zestawy wyników

xp_deletemail zwraca komunikat, gdy przekazany identyfikator ważne wiadomości.

Uwagi

Niepowodzenie z wyjątkiem nieprawidłowy parametr jest rejestrowany w dzienniku aplikacji systemu Windows.

xp_deletemail usuwa wiadomości ze skrzynki odbiorczej, ale nie powoduje usunięcia żadnych załączników z systemu plików.Załączniki należy usunąć ręcznie.Generowanie załączników można pominąć ustawienie suppress_attach parametr dla xp_readmail na wartość TRUE.Aby uzyskać więcej informacji dotyczących problemów z zabezpieczeniami z załącznikami, zobacz xp_readmail (języka Transact-SQL).

xp_deletemail nie rejestrował usuniętych wiadomości lub użytkowników, którzy usunięte wiadomości.Może to spowodować problemy z inspekcji w środowisku, w których wielu użytkowników ma uprawnienia do wykonać xp_deletemail.Aby zminimalizować ten problem, należy ograniczyć uprawnienia dla xp_deletemail do członków sysadmin stała rola serwera.

Uprawnienia

Wymaga członkostwa w sysadmin stała rola serwera, ale można uprawnienia EXECUTE udzielone innym użytkownikom.Jednak ze względów bezpieczeństwa zalecane jedynie uprawnienia dla tej procedura składowana dla członków sysadmin stała rola serwera.

Przykłady

Poniższy przykład pobiera komunikat identyfikator dostarczony z xp_findnextmsg, a następnie używa tego Identyfikatora wiadomości do usunięcia wiadomości.Wartość z xp_findnextmsg jest umieszczana w zmiennej lokalnej @message_id.

DECLARE @message_id varchar(255) ;

USE master ;

EXEC xp_findnextmsg @msg_id = @message_id OUTPUT ;

EXEC xp_deletemail @message_id ;