| Termin | Definicja |
|---|---|
| Messages Pane | Messages Pane to panel Management Studio prezentujący komunikaty serwera zwrócone podczas wykonania zapytania. Rola panelu Messages w SQL Server Management StudioMessages Pane, czyli panel komunikatów, jest częścią interfejsu SQL Server Management Studio (SSMS). Pojawia się w obszarze wyników po uruchomieniu zapytania lub innej instrukcji T-SQL. Panel prezentuje tekstowe komunikaty zwrócone przez aparat SQL Server, a także informacje wygenerowane przez samo środowisko wykonawcze zapytania. W praktyce służy do obserwowania przebiegu operacji, ostrzeżeń, błędów składni i błędów wykonania oraz komunikatów diagnostycznych przekazywanych przez skrypt. Panel Messages jest odrębny od zakładki Results. Results zawiera zestawy wierszy zwrócone przez instrukcje SELECT, natomiast Messages pokazuje komunikaty tekstowe niezależnie od tego, czy zapytanie zwróciło dane. Jeżeli skrypt zawiera zarówno SELECT, jak i komunikat PRINT, SSMS może wyświetlić wynik tabelaryczny w zakładce Results, a tekst z PRINT w zakładce Messages. Taki podział ułatwia rozróżnienie danych będących rezultatem zapytania od informacji opisujących jego wykonanie. Jakie informacje trafiają do okna komunikatówDo panelu Messages mogą trafić między innymi komunikaty generowane przez instrukcję PRINT. Jest ona używana do przekazywania tekstu podczas wykonywania skryptu, na przykład nazwy aktualnie przetwarzanego etapu albo wartości pomocniczej wykorzystywanej przy analizie procedury. PRINT nie tworzy zestawu wynikowego i nie zapisuje tekstu jako danych tabelarycznych. Komunikaty tego typu są przeznaczone głównie do śledzenia przebiegu kodu T-SQL uruchamianego w danym oknie zapytania. W panelu widoczne są również komunikaty błędów i ostrzeżeń SQL Server. Zwykle zawierają numer komunikatu, poziom ważności, stan, nazwę procedury lub obiektu oraz numer wiersza, jeżeli aparat może wskazać ich źródło. Wpis może także wskazywać bazę danych, nazwę serwera albo fragment operacji, podczas której wystąpił problem. Nie każdy komunikat oznacza przerwanie całego skryptu. Znaczenie wpisu zależy od jego poziomu ważności, rodzaju instrukcji oraz sposobu obsługi błędu w kodzie. Komunikaty błędów, PRINT i obsługa wyjątkówTekst wyświetlany w Messages Pane może pochodzić z mechanizmu zgłaszania błędów T-SQL. Instrukcja RAISERROR pozwala wygenerować komunikat o określonym poziomie ważności i stanie, a instrukcja THROW służy do zgłaszania lub ponownego przekazywania błędów w obsłudze wyjątków. W konstrukcji TRY...CATCH informacje o przechwyconym błędzie można pobrać między innymi za pomocą funkcji ERROR_NUMBER(), ERROR_MESSAGE(), ERROR_SEVERITY(), ERROR_STATE(), ERROR_PROCEDURE() i ERROR_LINE(), a następnie przekazać do panelu jako komunikat. Podczas interpretowania zawartości panelu trzeba odróżnić numer błędu od numeru wiersza. Numer błędu identyfikuje klasę problemu w komunikatach SQL Server, natomiast numer wiersza wskazuje miejsce wykrycia problemu w wykonywanym batchu, procedurze lub innym module. W przypadku dynamicznie budowanego SQL numer wiersza może odnosić się do tekstu wygenerowanego w czasie działania, a nie do pierwotnego fragmentu aplikacji. Samo skopiowanie komunikatu nie zawsze wystarcza do znalezienia przyczyny, dlatego należy zestawić go z pełnym skryptem, parametrami i kolejnością wykonywanych instrukcji. Wykorzystanie panelu przy analizie zapytańMessages Pane jest przydatny podczas sprawdzania, czy zapytanie wykonało się zgodnie z założeniami. Jeżeli skrypt wykonuje kilka operacji modyfikujących dane, komunikaty mogą pomóc ustalić, po którym etapie pojawiło się ostrzeżenie lub błąd. Warto analizować cały przebieg, ponieważ wcześniejsze instrukcje mogły zakończyć się powodzeniem, a problem mógł wystąpić dopiero przy zapisie do konkretnej tabeli, konwersji typu danych, naruszeniu ograniczenia albo wywołaniu procedury. Oprócz tekstu komunikatu znaczenie ma także kod powrotu i stan transakcji. Podczas diagnostyki na laptopie lub komputerze należy sprawdzić, czy problem wynika z samego zapytania, połączenia z instancją SQL Server, uprawnień konta, wybranej bazy danych albo ustawień sesji. W SSMS można skopiować zawartość panelu i porównać ją z komunikatem uzyskanym przy ponownym wykonaniu tego samego batcha. Jeżeli komunikat pojawia się tylko w określonych warunkach, trzeba uwzględnić wartości parametrów, dane wejściowe i kolejność operacji. Przy pracy z komputerem użytkownika Warszawskie Pogotowie Komputerowe wykonuje profesjonalną naprawę laptopów, komputerów PC i ich podzespołów, gdy źródłem problemu jest środowisko sprzętowe lub konfiguracja stanowiska. |