Udostępnij przez


Kody błędów SQLSTATE

Dotyczy:zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime 12.2 i nowsze

Wszystkie klasy błędów zwracane przez usługę Azure Databricks są skojarzone z 5 znakami SQLSTATE. A SQLSTATE to standardowe kodowanie SQL dla warunków błędów często używanych przez JDBCinterfejsy API klienta , ODBCi innych.

Element SQLSTATE składa się z dwóch części: klasa dwóch znaków i trzyznaczny podklasa. Każdy znak musi być cyfrą '0' do '9' lub 'A' do 'Z'.

Chociaż wiele SQLSTATE wartości jest zalecanych przez standard SQL, inne są powszechnie stosowane w branży, specyficzne dla platformy Spark lub Azure Databricks.

W razie potrzeby platformy Spark i Azure Databricks wykorzystują zakresy klas 'KD' i podklas 'K**' dla niestandardowych kodów SQLSTATE. Klasa 'XX' jest używana w przypadku błędów wewnętrznych, które uzasadniają raport o błędach.

Aby uzyskać uporządkowaną listę klas błędów, zobacz: Obsługa błędów w usłudze Azure Databricks

Usługa Azure Databricks używa następujących SQLSTATE klas:

Klasa 07: dynamiczny błąd SQL

SQLSTATE Opis i wystawianie warunków błędu
07001 klauzula using nie jest zgodna ze specyfikacjami parametrów dynamicznych
07501 Opcja określona na stronie PREPARE lub EXECUTE jest nieprawidłowa.

Klasa 08: wyjątek połączenia

SQLSTATE Opis i wystawianie warunków błędu
08000 wyjątek połączenia
08001 Klient SQL nie może nawiązać połączenia SQL
08003 połączenie nie istnieje
08004 Program SQL Server odrzucił ustanowienie połączenia SQL
08006 błąd połączenia
08KD1 serwer zajęty

Klasa 0A: funkcja nie jest obsługiwana

SQLSTATE Opis i wystawianie warunków błędu
0A000 funkcja nie jest obsługiwana
0A001 wiele transakcji serwerów
0AKD0 Operacja między katalogami lub schematami nie jest obsługiwana
0AKD1 Funkcja zabezpieczeń nie jest obsługiwana
0AKDC Nieobsługiwane w funkcji delta
0AKDD Funkcja wymaga funkcji delta
0AKDE Funkcja nie jest włączona dla tej tabeli delty
0AKLT Funkcja nieobsługiwana w przypadku tabel przesyłania strumieniowego
0AKUC Nieobsługiwane w katalogu Unity
0AKUD Funkcja wymaga Unity Catalog
0AXX1 Nieoczekiwany kolumnowy UOID w bramie wtłaczania danych
0AXX2 Nieoczekiwany identyfikator UOID tabeli w bramie wejściowej danych

Klasa 0B: nieprawidłowa inicjacja transakcji

SQLSTATE Opis i wystawianie warunków błędu
0B000 nieprawidłowa inicjacja transakcji

Klasa 0K: rezygnacja, gdy program obsługi nie jest aktywny

SQLSTATE Opis i wystawianie warunków błędu
0K000 rezygnacja, gdy program obsługi nie jest aktywny

Klasa 0N: błąd mapowania SQL/XML

SQLSTATE Opis i wystawianie warunków błędu
0N000 Błąd mapowania SQL/XML

Klasa 21: naruszenie kardynalności

SQLSTATE Opis i wystawianie warunków błędu
21000 naruszenie kardynalności
21506 Ten sam wiersz tabeli nie może być obiektem docelowym dla więcej niż jednej operacji aktualizacji, usuwania lub wstawiania.
21S01 Lista wartości nie pasuje do listy kolumn.

Klasa 22: wyjątek danych

SQLSTATE Opis i wystawianie warunków błędu
22000 wyjątek danych
22001 dane ciągów, prawe obcinanie
22002 wartość null, brak parametru wskaźnika
22003 wartość liczbowa poza zakresem
22004 niedozwolona wartość null
22005 błąd w przypisaniu
22006 nieprawidłowy format interwału
22007 nieprawidłowy format daty/godziny
22008 Przepełnienie pola daty/godziny
22009 nieprawidłowa wartość przesunięcia strefy czasowej
2200E wartość null w obiekcie docelowym tablicy
2200G najbardziej specyficzna niezgodność typów
2200P wartość interwału poza zakresem
22010 nieprawidłowa wartość parametru wskaźnika
22012 dzielenie według zera
22015 przepełnienie pola interwału
22018 nieprawidłowa wartość znaku rzutu
2201B nieprawidłowe wyrażenie regularne
2201E nieprawidłowy argument logarytmu naturalnego
22022 przepełnienie wskaźnika
22023 nieprawidłowa wartość parametru
22024 nieokreślony ciąg języka C
22029 noncharacter w ciągu UCS
22032 nieprawidłowy tekst JSON
2203G Nie można rzutować elementu sql json na typ docelowy
22525 Wartość klucza partycjonowania jest nieprawidłowa.
22531 Argument wbudowanej lub systemowej procedury spowodował błąd.
22546 Wartość argumentu rutynowego jest nieprawidłowa.
22KD0 Błąd przejściowy
22KD1 Nieprawidłowy identyfikator URI lub ŚCIEŻKA
22KD2 Oświadczenie tożsamości nie jest zdenerwowany
22KD3 Nie można rozwinąć typu źródłowego na typ docelowy.
22P02 nieprawidłowa reprezentacja tekstu
22P03 nieprawidłowa reprezentacja binarna

Klasa 23: naruszenie ograniczenia integralności

SQLSTATE Opis i wystawianie warunków błędu
23001 ograniczanie naruszenia
23502 Wartość wstawiania lub aktualizowania ma wartość null, ale kolumna nie może zawierać wartości null.
23505 Wystąpiło naruszenie ograniczenia nałożonego przez unikatowy indeks lub unikatowe ograniczenie.
23512 Nie można dodać ograniczenia sprawdzania, ponieważ tabela zawiera wiersze, które nie spełniają definicji ograniczenia.
23K01 Naruszenie kardynalności MERGE

Klasa 25: nieprawidłowy stan transakcji

SQLSTATE Opis i wystawianie warunków błędu
25000 nieprawidłowy stan transakcji
25006 transakcja SQL tylko do odczytu

Klasa 28: nieprawidłowa specyfikacja autoryzacji

SQLSTATE Opis i wystawianie warunków błędu
28000 nieprawidłowa specyfikacja autoryzacji

Klasa 2B: deskryptory uprawnień zależnych nadal istnieją

SQLSTATE Opis i wystawianie warunków błędu
2BP01 obiekty zależne nadal istnieją

Klasa 2D: nieprawidłowe zakończenie transakcji

SQLSTATE Opis i wystawianie warunków błędu
2D521 ZATWIERDZANIE LUB WYCOFYWANIE SQL jest nieprawidłowe w bieżącym środowisku operacyjnym.
2DKD0 Nie można podłączyć zatwierdzenia po zatwierdzeniu.

Klasa 35: nieprawidłowy numer warunku

SQLSTATE Opis i wystawianie warunków błędu
35000 nieprawidłowy numer warunku

Klasa 38: wyjątek procedury zewnętrznej

SQLSTATE Opis i wystawianie warunków błędu
38000 wyjątek procedury zewnętrznej

Klasa 39: wyjątek wywołania procedury zewnętrznej

SQLSTATE Opis i wystawianie warunków błędu
39000 wyjątek wywołania procedury zewnętrznej

Klasa 3D: nieprawidłowa nazwa katalogu

SQLSTATE Opis i wystawianie warunków błędu
3D000 nieprawidłowa nazwa wykazu

Klasa 3F: nieprawidłowa nazwa schematu

SQLSTATE Opis i wystawianie warunków błędu
3F000 nieprawidłowa nazwa schematu

Klasa 40: wycofywanie transakcji

SQLSTATE Opis i wystawianie warunków błędu
40000 wycofywanie transakcji
40001 niepowodzenie serializacji

Klasa 42: błąd składni lub naruszenie reguły dostępu

SQLSTATE Opis i wystawianie warunków błędu
42000 błąd składniowy lub naruszenie reguły dostępu
42001 Błąd nieprawidłowego kodera
42501 Identyfikator autoryzacji nie ma uprawnień do wykonania określonej operacji na zidentyfikowanym obiekcie.
42505 Wystąpił błąd autoryzacji połączenia.
42517 Określony identyfikator autoryzacji nie może korzystać z zaufanego kontekstu.
42601 Znak, token lub klauzula jest nieprawidłowa lub brakuje.
42602 Wykryto nieprawidłowy znak w nazwie.
42604 Wykryto nieprawidłową stałą liczbową lub ciągową.
42605 Liczba argumentów określonych dla funkcji skalarnej jest nieprawidłowa.
42607 Operand funkcji agregującej lub operatora CONCAT jest nieprawidłowy.
42608 Użycie wartości NULL lub DEFAULT w VALUES lub w instrukcji przypisania jest niewłaściwe.
42611 Definicja kolumny, argumentu, parametru lub zmiennej globalnej jest nieprawidłowa.
42612 Ciąg instrukcji jest instrukcją SQL, która nie jest akceptowalna w kontekście, w którym jest prezentowany.
42613 Klauzule wzajemnie się wykluczają.
42614 Zduplikowane słowo kluczowe lub klauzula jest nieprawidłowa.
42616 Określono nieprawidłowe opcje
42617 Ciąg instrukcji jest pusty lub pusty.
42621 Ograniczenie sprawdzania lub wygenerowane wyrażenie kolumny jest nieprawidłowe.
42623 Nie można określić klauzuli DEFAULT.
42701 Ten sam element docelowy jest określany więcej niż raz dla przypisania w tej samej instrukcji SQL.
42702 Odwołanie do kolumny jest niejednoznaczne z powodu zduplikowanych nazw.
42703 Wykryto niezdefiniowaną kolumnę lub nazwę parametru.
42704 Wykryto niezdefiniowany obiekt lub nazwę ograniczenia.
42710 Wykryto zduplikowany obiekt lub nazwę ograniczenia.
42711 W definicji obiektu lub instrukcji ALTER TABLE wykryto zduplikowaną nazwę kolumny.
42713 Wykryto zduplikowany obiekt na liście lub jest taki sam jak istniejący obiekt.
42723 Procedury z tym samym podpisem już istnieją w schemacie, module lub bloku złożonego, w którym jest zdefiniowany.
42734 Wykryto zduplikowaną nazwę parametru, nazwę zmiennej SQL, etykietę lub nazwę warunku.
4274K Nieprawidłowe użycie nazwanego argumentu podczas wywoływania procedury.
42802 Liczba wartości docelowych nie jest taka sama jak liczba wartości źródłowych.
42803 Odwołanie do kolumny w klauzuli SELECT lub HAVING jest nieprawidłowe, ponieważ nie jest to kolumna grupowania; lub odwołanie do kolumny w klauzuli GROUP BY jest nieprawidłowe.
42804 Wyrażenia wynikowe w wyrażeniu CASE nie są zgodne.
42805 Liczba całkowita w klauzuli ORDER BY nie identyfikuje kolumny tabeli wyników.
42806 Nie można przypisać wartości do zmiennej, ponieważ typy danych nie są zgodne.
42807 Instrukcja data-change nie jest dozwolona w tym obiekcie.
42808 Kolumna zidentyfikowana w operacji INSERT lub UPDATE nie jest aktualizowana.
42809 Zidentyfikowany obiekt nie jest typem obiektu, do którego stosuje się instrukcję.
42815 Typ danych, długość, skala, wartość lub IDENTYFIKATOR CCSID jest nieprawidłowy.
42816 Wartość daty/godziny lub czas trwania w wyrażeniu jest nieprawidłowa.
42818 Operandy operatora lub funkcji nie są zgodne lub porównywalne.
42822 Wyrażenie w klauzuli ORDER BY lub klauzuli GROUP BY jest nieprawidłowe.
42823 Wiele kolumn jest zwracanych z podzapytania, które zezwala tylko na jedną kolumnę.
42825 Wiersze UNION, INTERSECT, EXCEPT lub VALUES nie mają pasujących kolumn.
42826 Wiersze UNION, INTERSECT, EXCEPT lub VALUES nie mają takiej samej liczby kolumn.
42830 Klucz obcy nie jest zgodny z opisem klucza nadrzędnego.
42831 Wartości null nie są dozwolone w kolumnie klucza podstawowego, kolumnie unikatowego klucza, kolumnie ROWID, kolumnie znacznika czasu zmiany wiersza, kolumnie początku wiersza, kolumnie końca wiersza, lub kolumnie okresu aplikacyjnego.
42832 Operacja nie jest dozwolona w obiektach systemowych.
42836 Specyfikacja rekurencyjnej, nazwanej tabeli pochodnej jest nieprawidłowa.
42837 Nie można zmienić kolumny, ponieważ jej atrybuty nie są zgodne z bieżącymi atrybutami kolumny.
42845 Wykryto nieprawidłowe użycie funkcji NOT DETERMINISTIC lub EXTERNAL ACTION.
42846 Rzutowanie z typu źródłowego na typ docelowy nie jest obsługiwane.
42852 Uprawnienia określone w GRANT lub REVOKE są nieprawidłowe lub niespójne. (Na przykład GRANT ALTER w widoku).
42883 Nie znaleziono procedury z pasującym podpisem.
42887 Funkcja lub odwołanie do tabeli są nieprawidłowe w kontekście, w którym występuje.
42891 Ograniczenie zduplikowane już istnieje.
42893 Nie można usunąć obiektu lub ograniczenia, zmienić ani przenieść, ani nie można odwołać władz z obiektu, ponieważ inne obiekty są od niego zależne.
428B3 Określono nieprawidłowy kod SQLSTATE.
428C4 Liczba elementów po każdej stronie operatora predykatu nie jest taka sama.
428EK Kwalifikator schematu jest nieprawidłowy.
428FR Nie można zmienić kolumny zgodnie z określonymi wymaganiami.
428FT Klauzula partycjonowania określona w instrukcji CREATE lub ALTER jest nieprawidłowa.
428GU Tabela musi zawierać co najmniej jedną kolumnę, która nie jest niejawnie ukryta.
428H2 Typ danych nie jest obsługiwany w kontekście, w którym jest używany.
428HD Nie można przetworzyć wyrażenia, ponieważ nie można zastosować maski kolumn ani definicja maski powoduje konflikt z wyrażeniem.
42902 Obiekt INSERT, UPDATElub DELETE jest również identyfikowany (prawdopodobnie niejawnie za pośrednictwem widoku) w klauzuli FROM.
42903 Nieprawidłowe użycie funkcji agregującej lub funkcji OLAP.
42908 Instrukcja nie zawiera wymaganej listy kolumn.
42939 Nie można użyć nazwy, ponieważ określony identyfikator jest zarezerwowany do użycia systemu.
42996 Określona kolumna może nie być używana w kluczu partycji.
429BB Typ danych kolumny, parametru lub zmiennej SQL nie jest obsługiwany.
429BQ Określona zmiana typu danych lub atrybutu jest niedozwolona.
42K01 typ danych nie został w pełni określony
42K02 nie znaleziono źródła danych
42K03 Nie znaleziono pliku
42K04 Zduplikowany plik
42K05 Nazwa jest nieprawidłowa
42K06 Nieprawidłowy typ opcji
42K07 Nieprawidłowy literał schematu
42K08 Nie stała
42K09 Niezgodność typów danych
42K0A Nieprawidłowa klauzula UNPIVOT
42K0B Zablokowano starszą funkcję
42K0C Niejednoznaczne odwołanie do ograniczenia
42K0D Nieprawidłowa funkcja lambda
42K0E Wyrażenie jest nieprawidłowe w kontekście używanym
42K0F Utrwalonego obiektu nie można odwoływać się do obiektu tymczasowego.
42K0G Protobuf jest nieprawidłowy
42K0H Wykryto wywołanie cykliczne.
42K0I Nie znaleziono konfiguracji SQL lub jest to nieprawidłowe.
42K0K Nieprawidłowa funkcja rozkładu odwrotnego
42K0L Nieprawidłowe użycie etykiet.
42K0M Nieprawidłowa deklaracja zmiennej.
42K0N Nieprawidłowy typ zewnętrzny.
42K0O Funkcja skalarna nie zastępuje metody "produceResult(InternalRow)" z implementacją niestandardową.
42K0P Funkcja skalarna nie implementuje ani nie zastępuje metody "produceResult(InternalRow)".
42K0Q Nieprawidłowa deklaracja obsługi.
42K0R Nieprawidłowa deklaracja warunku.
42K10 Nieprawidłowa opcja dynamiczna.
42KD0 Niejednoznaczne odwołanie do nazwy.
42KD1 Operacja nie jest obsługiwana w trybie sesji TYLKO DO ODCZYTU.
42KD2 Nazwy tabel źródłowych i docelowych operacji SYNC muszą być takie same.
42KD3 Nie można dodać kolumny zgodnie z podanymi specyfikacjami.
42KD4 Operacja nie jest obsługiwana, ponieważ schemat tabeli uległ zmianie.
42KD5 Nie można utworzyć pliku lub ścieżki.
42KD6 Nie znaleziono informacji o partycji.
42KD7 Niezgodność podpisu tabeli.
42KD8 Położenie kolumny poza zakresem.
42KD9 Nie można wnioskować schematu tabeli.
42KDA Nie można scalić pliku ze schematem tabeli.
42KDB Nieprawidłowy adres URL
42KDC Zarchiwizowane odwołanie do pliku.
42KDD Nieobsługiwana operacja w widoku przesyłania strumieniowego.
42KDE Nieobsługiwana operacja w zestawie danych przesyłania strumieniowego.
42KDF Brak argumentu wymaganego parametru procedury.
42KDG Schemat docelowy nie jest zgodny z pozyskanymi danymi.
42KDH Zduplikowana opcja lub klucz właściwości.
42KDI Nieprawidłowe lub wygasłe zewnętrzne poświadczenie lub token.
42KDJ Nie można zastosować zasad ABAC/RBAC.
42KDK Nieprawidłowa konfiguracja poświadczeń
42KDL Nieprawidłowa instalacja systemu plików DBFS
42P01 niezdefiniowana tabela
42P02 niezdefiniowany parametr
42P06 zduplikowany schemat
42P07 zduplikowana tabela
42P08 niejednoznaczny parametr
42P10 nieprawidłowe odwołanie do kolumny
42P16 nieprawidłowa definicja tabeli
42P18 indeterminate datatype (nieokreślony typ danych)
42P20 błąd okna
42P21 niezgodność sortowania
42P22 nieokreślone sortowanie
42S02 Nie można odnaleźć tabeli podstawowej lub widoku
42S22 Nie znaleziono kolumny
42S23 Wyrażenie przekształcania partycji nie w elemecie "partitionedBy".
42XXX Znaleziono nieobsługiwane znaki.

Klasa 44: z naruszeniem opcji sprawdzania

SQLSTATE Opis i wystawianie warunków błędu
44000 z naruszeniem opcji sprawdzania

Klasa 46: Java DDL 1

SQLSTATE Opis i wystawianie warunków błędu
46103 nierozwiązana nazwa klasy
46110 nieobsługiwana funkcja
46121 nieprawidłowa nazwa kolumny

Klasa 51: nieprawidłowy stan aplikacji

SQLSTATE Opis i wystawianie warunków błędu
51000 Nieprawidłowy stan aplikacji
51024 Nie można użyć obiektu, ponieważ został oznaczony jako nieoperacyjny.

Klasa 53: niewystarczające zasoby

SQLSTATE Opis i wystawianie warunków błędu
53000 niewystarczające zasoby
53100 dysk pełny
53300 zbyt wiele połączeń
53400 przekroczono limit konfiguracji

Klasa 54: przekroczono limit programu

SQLSTATE Opis i wystawianie warunków błędu
54000 Przekroczono limit programu
54001 Instrukcja jest za długa lub zbyt złożona.
54006 Ciąg wynikowy jest za długi.
54011 Określono zbyt wiele kolumn dla tabeli, widoku lub funkcji tabeli.
54023 zbyt wiele argumentów
54K00 Przekroczono maksymalną głębokość zagnieżdżonych widoków.
54KD0 Przekroczono maksymalną liczbę funkcji zdefiniowanej przez użytkownika w planie zapytania.
54KD1 Przekroczono maksymalną liczbę obiektów w sesji.

Klasa 55: obiekt nie jest w stanie wymagań wstępnych

SQLSTATE Opis i wystawianie warunków błędu
55000 obiekt nie jest w wymaganym stanie
55019 Obiekt jest w nieprawidłowym stanie dla operacji.

Klasa 56: Inny błąd SQL lub produktu

SQLSTATE Opis i wystawianie warunków błędu
56000 Inny kod SQL lub błąd produktu
56038 Żądana funkcja nie jest obsługiwana w tym środowisku.
56098 Wystąpił błąd podczas niejawnego ponownego powiązania, ponownego kompilowania lub ponownego zmieniania.
56K00 Błąd programu Spark Connect

Klasa : interwencja 57operatora

SQLSTATE Opis i wystawianie warunków błędu
57000 interwencja operatora
57012 Zasób niezwiązany z bazą danych jest niedostępny. Nie wpłynie to na pomyślne wykonanie kolejnych instrukcji.
57KD0 Limit czasu wykonywania zapytania
57P01 zamknięcie administratora
57P02 zamykanie awaryjne
57P03 nie można teraz nawiązać połączenia

Klasa 58: Błąd systemowy

SQLSTATE Opis i wystawianie warunków błędu
58000 Błąd systemu
58030 Błąd we/wy

Klasa 82: za brak pamięci

SQLSTATE Opis i wystawianie warunków błędu
82100 brak pamięci (nie można przydzielić)

Klasa F0: błąd pliku konfiguracji

SQLSTATE Opis i wystawianie warunków błędu
F0000 błąd pliku konfiguracji

Klasa HV: warunek specyficzny dla FDW

SQLSTATE Opis i wystawianie warunków błędu
HV000 Warunek specyficzny dla FDW
HV091 nieprawidłowy identyfikator pola deskryptora

Klasa HY: warunek specyficzny dla interfejsu wiersza polecenia

SQLSTATE Opis i wystawianie warunków błędu
HY000 Warunek specyficzny dla interfejsu wiersza polecenia
HY008 operacja anulowana
HY109 nieprawidłowa pozycja kursora

Klasa KC: Błędy specyficzne dla Unity Catalog

SQLSTATE Opis i wystawianie warunków błędu
KCUC4 Nieprzechwycony wyjątek klienta

Klasa KD: błędy specyficzne dla źródła danych

SQLSTATE Opis i wystawianie warunków błędu
KD000 błędy specyficzne dla źródła danych
KD001 Nie można odczytać stopki pliku
KD002 Nieoczekiwana wersja
KD003 Nieprawidłowy dostęp do typu danych
KD004 Błąd wersji protokołu różnicowego
KD005 Tabela musi zawierać co najmniej jedną kolumnę bez partycji
KD006 Nie znaleziono zatwierdzeń w ścieżce dziennika
KD007 Zmieniono podpis tabeli
KD008 Nie ustawiono podpisu tabeli
KD009 Partycje nie są zgodne
KD00A Nieoczekiwane częściowe skanowanie
KD00B Nierozpoznany plik
KD00C Przechowywanie wersji nie jest ciągłe
KD00D Wymagane statystyki
KD00E niepowodzenie walidacji funkcji tabeli
KD00F Błąd żądania w chmurze
KD00G nieprawidłowy dostęp oparty na lokalizacji ścieżki
KD010 awaria zewnętrznego źródła danych
KD011 Szczegółowa kontrola dostępu (FGAC) w przypadku awarii dedykowanych zasobów obliczeniowych
KD012 Nie znaleziono grafu przepływu danych
KD013 błąd rozwiązywania ścieżki
KDL01 Błąd uruchamiania klastra

Klasa P0: błąd logiki proceduralnej

SQLSTATE Opis i wystawianie warunków błędu
P0001 zgłaszanie wyjątku