Udostępnij za pośrednictwem


Database Engine Error Severities

Jeśli błąd jest wywoływane przez SQL Server Database Engine, wagę błędu wskazuje typ problemów napotykanych przez SQL Server.

Poziomy ważności

W poniższej tabela wymieniono i opisano poziomy ważności błędów przez SQL Server Database Engine.

Poziom ważności

Description

0-9

Komunikaty informacyjne zwraca stan informacji lub w raporcie błędów, które nie są silne.The Database Engine does not raise system errors with severities of 0 through 9.

10

Komunikaty informacyjne zwraca stan informacji lub w raporcie błędów, które nie są silne.Ze względu na zgodność Database Engine Konwertuje ważności 10 ważności 0 przed zwróceniem informacji o błędzie do aplikacji wywołującej.

11-16

Wskazują błędy, które mogą być skorygowane przez użytkownika.

11

Wskazuje, że dany obiekt lub jednostka nie istnieje.

12

Specjalne wskaźnik ważności dla kwerend, które nie korzystają z blokowanie ze względu na specjalne kwerendy wskazówki.W niektórych przypadkach odczytu operacji wykonywanych przez te wyrażenia może spowodować niespójność danych ponieważ blokad nie zostaną podjęte w celu zagwarantowania spójności.

13

Wskazuje błędy zakleszczenie transakcji.

14

Wskazuje błędy związane z zabezpieczeniami, takie jak odmowa uprawnień.

15

Wskazuje błędy składni w Transact-SQL polecenie.

16

Wskazuje ogólnych błędów, które mogą być skorygowane przez użytkownika.

17-19

Wskazują błędy oprogramowania, które nie mogą być usuwane przez użytkownika.Informuje użytkownika administrator systemu problemu.

17

Wskazuje, że w instrukcja spowodowane SQL Server uruchomienie zasobów (takich jak pamięć, blokad lub miejsca na dysku dla bazy danych) lub może przekroczyć niektóre określonym przez administrator systemu.

18

Oznacza to problem występujący w Database Engine oprogramowanie, ale w instrukcja kończy wykonywanie i połączenia z wystąpienie Database Engine jest obsługiwana. Administrator systemu powinien zostać poinformowany zawsze wiadomość z ważności poziom 18 występuje.

19

Wskazuje, że nonconfigurable Database Engine Przekroczono limit i bieżący proces partia został zakończony. Komunikaty o błędach z ważności poziom 19 lub wyższe zatrzymać wykonywanie bieżącej partia.Wskaźnik ważności poziom 19 błędy są rzadko i muszą zostać poprawione przez administrator systemu lub dostawca usług pomocy technicznej podstawowego.Skontaktuj się z sieci administrator systemu po wiadomości z ważności poziom 19 jest uruchamiany.Komunikaty o poziomie ważności, od 19 do 25 są zapisywane dziennik błędów.

20-25

Wskazania błędów systemu i są błędy krytyczne, co oznacza, że Database Engine zadanie, które jest wykonywanie instrukcja lub wsadowym nie jest już uruchomiony. Zadanie rejestruje informacje o co wydarzyło, a następnie zostaje zakończony.W większości przypadków połączenia aplikacji do wystąpienie Database Engine może również zakończyć. Jeśli tak się stanie, w zależności od tego problemu, aplikacji nie można połączyć się ponownie.

Komunikaty o błędach w tym zakresie mogą wpływać na wszystkie procesy, uzyskiwanie dostępu do danych w tej samej bazy danych i może wskazywać na to, że baza danych lub obiekt jest uszkodzony.Komunikaty o poziomie ważności, od 19 do 25 są zapisywane dziennik błędów.

20

Wskazuje, że oświadczenie wystąpił problem.Ponieważ problem ma wpływ tylko bieżącego zadania, jest mało prawdopodobne, że samej bazy danych został uszkodzony.

21

Wskazuje, że problem wystąpił, dotyczy wszystkich zadań w bieżącej bazie danych, ale jest mało prawdopodobne, że bazy danych został uszkodzony.

22

Wskazuje, czy tabela lub określony w komunikacie Indeks został uszkodzony przez oprogramowanie lub sprzęt problem.

Wskaźnik ważności poziom 22 błędy występują rzadko.Jeśli jeden, uruchom CHECKDB DBCC, aby określić, czy też są uszkodzone innych obiektów w bazie danych.Ten problem może znajdować się w buforze pamięci podręcznej tylko a nie samego dysku.Jeśli tak, ponowne uruchomienie wystąpienie Database Engine rozwiązuje problem. Aby kontynuować pracę, należy połączyć wystąpienie Database Engine; w przeciwnym razie, użyj DBCC, aby naprawić problem. W niektórych przypadkach należy przywrócić bazę danych.

Jeśli ponowne uruchomienie wystąpienie Database Engine nie rozwiąże problemu, problem jest na dysku. Czasami zniszczenie obiektu określonego w komunikacie o błędzie może rozwiązać problem.Na przykład, jeśli wiadomość zgłasza, że wystąpienie Database Engine ustaliła, że wiersz o długości 0 w indeks nieklastrowany usunąć indeks i odbuduj go.

23

Wskazuje, że integralność całej bazy danych jest dane z powodu błędu sprzętu lub oprogramowania.

Wskaźnik ważności poziom 23 błędy występują rzadko.Jeśli jeden, uruchom CHECKDB DBCC, aby określić fragment szkód.Ten problem może znajdować się w pamięci podręcznej tylko a nie samego dysku.Jeśli tak, ponowne uruchomienie wystąpienie Database Engine rozwiązuje problem. Aby kontynuować pracę, należy połączyć wystąpienie Database Engine; w przeciwnym razie, użyj DBCC, aby naprawić problem. W niektórych przypadkach należy przywrócić bazę danych.

24

Wskazuje błąd nośnika.Administrator systemu może być konieczne przywrócenie bazy danych.Trzeba także wywołać dostawcą sprzętu.

Zdefiniowany przez użytkownika o ważności wiadomości

sp_addmessage może służyć do dodawania błąd zdefiniowany przez użytkownika wiadomości z severities od 1 do 25 do sys.messages Służy do wyświetlania katalogu. Te komunikaty zdefiniowane przez użytkownika mogą być używane przez RAISERROR.Aby uzyskać więcej informacji zobaczsp_addmessage (Transact-SQL).

RAISERROR można wygenerować błąd zdefiniowany przez użytkownika wiadomości z severities od 1 do 25.RAISERROR może odwoływać się komunikat o błędzie przez użytkownika, przechowywane w sys.messages katalogu widoku lub tworzenia wiadomości dynamicznie.Podczas korzystania z wiadomości przez użytkownika błędów w sys.messages podczas generowania błędu, wskaźnik ważności, określony przez RAISERROR zastępuje wskaźnik ważności, określone w sys.messages.Aby uzyskać więcej informacji zobaczRAISERROR (języka Transact-SQL).

O poziomie ważności a TRY…CATCH

Konstrukcja TRY…CATCH połowy wszystkie błędy wykonania o ważności wyższym niż 10, która nie kończyć się połączenie z bazą danych.

Błędy o ważności, od 0 do 10 to komunikaty informacyjne i nie powoduje wykonanie przejść z blok CATCH konstrukcji TRY…CATCH.

Błędy, które zazwyczaj kończy połączenie z bazą danych o ważności od 20 do 25, nie są obsługiwane przez blok CATCH, ponieważ wykonanie jest przerywana, gdy zakończy połączenie.

Aby uzyskać więcej informacji zobacz... TRY CATCH (języka Transact-SQL).

Trwa pobieranie o poziomie ważności

Funkcja systemowa ERROR_SEVERITY może służyć do pobrania wagę błędu, który spowodował blok CATCH konstrukcji TRY…CATCH do uruchomienia.ERROR_SEVERITY zwraca wartość NULL, jeśli poza zakresem blok CATCH.Aby uzyskać więcej informacji zobaczERROR_SEVERITY (Transact-SQL).