Rozwiązywanie problemów z aktywacją procedur przechowywanych
Uruchom aktywowanego procedur przechowywanych na sesja tła.Dlatego techniki rozwiązywania problemów procedura składowana aktywacja się nieco różnić te używane do rozwiązywania problemów z procedur przechowywanych, które są częścią sesja interaktywnej.
Technika: Analizowanie konfiguracji Service Broker
Jeśli aktywowanego procedury przechowywane nie są uruchamiane pomyślnie, ssbdiagnose narzędzie do wyszukiwania błędów konfiguracja w skojarzonych usług.Aby uzyskać więcej informacji, zobacz Narzędzie ssbdiagnose.
Technika: Wyświetlanie aktywacji przechowywane procedury wyjścia
Aktywowany procedura składowana dostarcza niewłaociwych wyniki lub nie odczytuje z kolejki, sprawdź SQL Server Dziennik błędów dla błędów i komunikatów, które lokalizowania problem.Aktywowany procedury przechowywane nie są skojarzone z dowolnej aplikacji.Informacje, które są zazwyczaj zwracane do aplikacji wywołującej zamiast jest umieszczana w SQL Server dziennik błędów.Obejmuje to błędy, komunikaty i wyjście instrukcje drukowania i RAISERROR.
Technika: Uruchomienie procedury przechowywanej z sesji interakcyjnych
Rozwiązywać problemy z procedura składowana aktywacja, można wyłączyć aktywacja w kolejce, a następnie uruchom procedura składowana z SQL Server Management Studio lub polecenie sqlcmd narzędzia.Po uruchomieniu procedura składowana z sesja interaktywnej, można wyświetlić wszystkie błędy, które są zwracane przez procedura składowana.
Jednak może Zobacz różne wyniki, jeśli ustawienia bazy danych i kontekstu zabezpieczeń są różne w sesja interaktywnej niż po uaktywnieniu procedura składowana przez Aparat baz danych.Przed uruchomieniem procedury, wykonaj następujące czynności:
Używane jako EXECUTE do zestaw użytkownika interakcyjnego sesja użytkownika określony dla aktywacja.
Ustaw opcje dla sesja, ustawienia domyślne bazy danych.
Aby uzyskać więcej informacji, zobacz Wewnętrzny kontekst aktywacji.
Symptom: Aktywacja przechowywane procedury nie są uruchamiane.
Oto najczęstsze przyczyny symptom ten:
Ustawienia dla kolejki może być zmienione.Używanie widoku wykazu sys.service_queues potwierdzić ustawienia dla kolejki.Upewnij się, że aktywacja dla kolejki jest włączone, że kolejki określa prawidłowe procedura składowana i że kolejki określa poprawny zabezpieczeń głównych.Upewnij się, że podmiot zabezpieczeń ma uprawnienia wykonywania na procedura składowana.
procedura składowana może nie zostać uruchomiony lub może zakończyć się natychmiast po jego uruchomieniu.W tym przypadek Sprawdź SQL Server Dziennik błędów dla błędów z procedura składowana.Można również uruchomić procedura składowana z SQL Server Management Studio i sprawdzić wyniki.
Symptom: Wiadomości pozostają w kolejce
Upewnij się, że procedury aktywacja przechowywane są uruchamiane poprawnie:
Sprawdź dynamiczny widok zarządzania sys.dm_broker_queue_monitors do zapewnienia, że monitor kolejki jest aktywny dla kolejki.Jeśli nie, włączyć aktywacja za pomocą instrukcja ALTER kolejki.
Stan monitora kolejki dla kolejki powinny być RECEIVES_OCCURRING.Jeśli monitor kolejki nie jest w tym Państwie, sprawdź dynamiczny widok zarządzania sys.dm_broker_activated_tasks do zapewnienia aktualnie uruchomione zadania aktywowany dla kolejki.W przypadku zadań aktywowanego aktywacja się niepowodzeniem.Aby uzyskać więcej informacji, zobacz "symptomów: Aktywacja przechowywane procedury nie działają. " sekcja wcześniej w tym temacie.
Aktywowany zadania są uruchomione, ale wiadomości pozostają w kolejce, zadanie jest albo możliwe do przyjęcia lub jest możliwe do zatwierdzanie zatwierdzanie.Sprawdź, czy SQL Server Dziennik błędów dla błędów z procedura składowana.Zatrzymywanie aktywacja i uruchamiania procedura składowana ręcznie mogą pomóc rozwiązać problem.