Einleitung
SQL Fehlercodes sind entscheidend für die Fehlersuche und Behebung in Datenbanken. Sie helfen Entwicklern und Administratoren, Probleme zu identifizieren und zu korrigieren, die während der Ausführung von SQL-Befehlen auftreten. SQL Fehlercodes variieren je nach Datenbankmanagementsystem (DBMS), wie PostgreSQL, MySQL oder Firebird. In diesem Artikel werden wir eine umfassende Übersicht über SQL Fehlercodes geben, ihre Bedeutungen erläutern und Lösungen für häufige Probleme anbieten.
Die Bedeutung von SQL Fehlercodes liegt in ihrer Fähigkeit, genaue Informationen über den Ursprung eines Fehlers zu liefern. Dies ermöglicht es Nutzern, gezielte Korrekturen vorzunehmen und die Effizienz ihrer Datenbankoperationen zu verbessern.
Fehlercodes-Tabelle
Hier ist eine umfassende Tabelle mit verschiedenen SQL Fehlercodes, ihrer Bedeutung und möglichen Ursachen. Bitte beachten Sie, dass die Liste nicht vollständig sein kann, da es viele spezifische Fehlercodes für verschiedene DBMS gibt.
Fehlercode | Bedeutung | Mögliche Ursachen |
---|---|---|
SQLCODE=0 | Erfolgreiche Ausführung eines SQL-Befehls | Keine Fehler |
-1 | Ungültiger SQL-Befehl | Syntaxfehler |
-2 | Exponent fehlt nach ‘E’ | Ungültige numerische Werte |
-3 | Fehlende schließende Anführungszeichen | Ungültige Zeichenfolgen |
-4 | Erwarteter Term fehlt | Ungültige SQL-Syntax |
-5 | Spaltennummer in ORDER BY stimmt nicht mit SELECT überein | Ungültige Sortierungen |
-6 | ORDER BY-Spalte nach UNION nicht gefunden | Ungültige Verbindungen |
-7 | Exponent außerhalb des gültigen Bereichs | Ungültige numerische Werte |
-8 | Ungültiger DATEPART-Code | Ungültige Datumsoperationen |
-9 | Inkompatible SELECT-Listen in UNION | Ungültige Verbindungen |
-10 | Subquery muss genau ein Element in der SELECT-Liste haben | Ungültige Unterabfragen |
-51 | SQL-Befehl erwartet | Ungültige Befehlssequenz |
-52 | Cursor wurde bereits/vorher nicht deklariert | Ungültige Cursorverwaltung |
-53 | Konstante oder Variable erwartet als neuer Wert | Ungültige Zuweisungen |
-54 | Array-Bezeichner erwartet nach VALUES | Ungültige Arrayoperationen |
-55 | Ungültiges GRANT oder REVOKE | Ungültige Berechtigungen |
-56 | GRANT/REVOKE-Aktion nicht anwendbar auf dieses Objekt | Ungültige Objekttypen |
-57 | Trigger enthält WHEN-Klausel, aber die Trigger-Sprache ist nicht SQL | Ungültige Triggerdefinitionen |
-58 | Duplikate Felder in Trigger-UPDATE-OF-Klausel | Ungültige Triggeroperationen |
-59 | Mehr als ein Feld nicht zulässig | Ungültige Feldoperationen |
-60 | Erwartete Aktion (%ALTER, SELECT, UPDATE usw.) fehlt | Ungültige SQL-Befehle |
-61 | Cursor ist nicht aktualisierbar | Ungültige Cursoroperationen |
-62 | Zusätzliche neue Werte erwartet für INSERT/UPDATE | Ungültige Einfügungen/Aktualisierungen |
-63 | Datenfehler – ungültiges Escape-Zeichen | Ungültige Zeichenfolgen |
-64 | Inkompatible SELECT-Liste in INSERT | Ungültige Einfügungen |
-342 | System-Namespace kann nicht gelöscht werden | Ungültige Namespace-Operationen |
-343 | Ungültiger Datenbankname | Ungültige Datenbankverbindung |
-344 | Aktuell genutzte Datenbank kann nicht gelöscht werden | Ungültige Datenbankoperationen |
-350 | Unvorhergesehner Fehler beim Ausführen von SqlComputeCode | Ungültige Codeausführung |
-356 | SQL-Funktion (gespeicherte Prozedur) gibt keinen Wert zurück | Ungültige Funktionsdefinition |
-357 | SQL-Funktion (gespeicherte Prozedur) ist nicht als Funktionsprozedur definiert | Ungültige Funktionsdefinition |
-358 | SQL-Funktion (gespeicherte Prozedur) hat keinen eindeutigen Namen | Ungültige Funktionsnamen |
-359 | SQL-Funktion (gespeicherte Prozedur) nicht gefunden | Ungültige Funktionsaufrufe |
-360 | Klasse nicht gefunden | Ungültige Klassenreferenzen |
-361 | Methode oder Abfrage-Name nicht eindeutig | Ungültige Methodennamen |
-362 | Methode oder Abfrage nicht gefunden | Ungültige Methodenaufrufe |
-363 | Trigger nicht gefunden | Ungültige Triggeraufrufe |
-364 | Trigger mit gleicher Ereignis-, Zeit- und Reihenfolge bereits definiert | Ungültige Triggerdefinitionen |
-365 | Trigger-Name nicht eindeutig | Ungültige Triggernamen |
-366 | Schema-Name stimmt nicht mit Trigger-Name und Tabellennamen überein | Ungültige Schemadefinitionen |
-370 | SQL CALL, mehr Argumente angegeben als in der gespeicherten Prozedur definiert | Ungültige Prozeduraufrufe |
-371 | :HVar = CALL … für eine Prozedur, die keinen Wert zurückgibt | Ungültige Prozeduraufrufe |
-372 | Unterstützung für externe Funktionsaufrufe deaktiviert | Ungültige Funktionsaufrufe |
-373 | Externer Funktionsaufruf darf keine % Routine aufrufen | Ungültige Funktionsaufrufe |
-374 | Datentyp eines Feldes kann nicht zu/von einem Stream-Typ geändert werden, wenn die Tabelle Daten enthält | Ungültige Datentypänderungen |
-375 | ROLLBACK zu einem nicht eingerichteten Savepoint nicht möglich | Ungültige Transaktionen |
-376 | Ungültiges CAST-Ziel angegeben | Ungültige Typumwandlungen |
-377 | Feld erscheint mehrfach in Zuweisungsliste von INSERT oder UPDATE | Ungültige Feldoperationen |
-378 | Datentypen stimmen nicht überein, explizites CAST erforderlich | Ungültige Typumwandlungen |
-380 | Ungültiges oder fehlendes Argument für skalare Funktion | Ungültige Funktionsaufrufe |
-381 | Zu viele Argumente für skalare Funktion | Ungültige Funktionsaufrufe |
-400 | Tödlicher Fehler aufgetreten | Ungültige Systemoperationen |
-401 | Tödlicher Verbindungsfehler | Ungültige Verbindungen |
-402 | Ungültiger Benutzername/Passwort | Ungültige Anmeldedaten |
-405 | Fehler beim Lesen von der Kommunikationsvorrichtung | Ungültige Geräteoperationen |
-406 | Fehler beim Schreiben auf den Server | Ungültige Serveroperationen |
-407 | Fehler beim Schreiben auf den Server-Master | Ungültige Serveroperationen |
-408 | Fehler beim Starten des Servers | Ungültige Serveroperationen |
-409 | Ungültige Serverfunktion | Ungültige Serveroperationen |
-410 | Ungültiges Verzeichnis | Ungültige Dateisystemoperationen |
-411 | Kein Stream-Objekt für Feld definiert | Ungültige Feldoperationen |
-412 | Allgemeiner Stream-Fehler | Ungültige Streamoperationen |
-413 | Inkompatibles Client-Server-Protokoll | Ungültige Kommunikationsprotokolle |
-415 | Tödlicher Fehler im SQL-Filter | Ungültige Filteroperationen |
-416 | CacheInfo-Fehler | Ungültige Cacheoperationen |
-417 | Sicherheitsfehler | Ungültige Sicherheitseinstellungen |
-422 | SELECT-Anfrage über ODBC, JDBC oder dynamisches SQL kann keine INTO-Klausel enthalten | Ungültige SQL-Syntax |
-425 | Fehler beim Verarbeiten einer gespeicherten Prozedur-Anfrage | Ungültige Prozeduraufrufe |
-426 | Fehler beim Vorbereiten einer gespeicherten Prozedur | Ungültige Prozedurdefinitionen |
-427 | Ungültiger Name einer gespeicherten Prozedur | Ungültige Prozeduraufrufe |
-428 | Gespeicherte Prozedur nicht gefunden | Ungültige Prozeduraufrufe |
PostgreSQL Fehlercodes
Fehlercode | Bedeutung | Mögliche Ursachen |
---|---|---|
00000 | Erfolgreiche Ausführung | Keine Fehler |
01000 | Warnung | Ungültige Operationen |
02000 | Keine Daten | Ungültige Abfragen |
08000 | Verbindungsfehler | Ungültige Verbindungen |
09000 | Ausgelöste Aktionen | Ungültige Trigger |
0A000 | Funktion nicht unterstützt | Ungültige SQL-Befehle |
0B000 | Ungültige Transaktionsinitialisierung | Ungültige Transaktionen |
0F000 | Locator-Ausnahme | Ungültige Speicheroperationen |
0L000 | Ungültiger Grantor | Ungültige Berechtigungen |
0P000 | Ungültige Rollenspezifikation | Ungültige Rollen |
0Z000 | Diagnose-Ausnahme | Ungültige Diagnoseoperationen |
20000 | Fall nicht gefunden | Ungültige Fallauswertungen |
21000 | Kardinalitätsverletzung | Ungültige Mengenoperationen |
22000 | Datenfehler | Ungültige Datenoperationen |
2202E | Array-Index-Fehler | Ungültige Arrayoperationen |
22021 | Zeichen nicht im Repertoire | Ungültige Zeichenfolgen |
22008 | Datum/Uhrzeit-Feldüberlauf | Ungültige Datumsoperationen |
22012 | Division durch Null | Ungültige mathematische Operationen |
22005 | Fehler in der Zuweisung | Ungültige Zuweisungen |
2200B | Konflikt mit Escape-Zeichen | Ungültige Zeichenfolgen |
22022 | Indikatorüberlauf | Ungültige Indikatoroperationen |
22015 | Intervall-Feldüberlauf | Ungültige Intervalloperationen |
2201E | Ungültiges Argument für Logarithmus | Ungültige mathematische Operationen |
22014 | Ungültiges Argument für NTILE-Funktion | Ungültige mathematische Operationen |
22016 | Ungültiges Argument für NTH_VALUE-Funktion | Ungültige mathematische Operationen |
2201F | Ungültiges Argument für Potenzfunktion | Ungültige mathematische Operationen |
2201G | Ungültiges Argument für WIDTH_BUCKET-Funktion | Ungültige mathematische Operationen |
22018 | Ungültiger Zeichenwert für CAST | Ungültige Typumwandlungen |
22007 | Ungültiges Datum/Zeit-Format | Ungültige Datumsoperationen |
22019 | Ungültiges Escape-Zeichen | Ungültige Zeichenfolgen |
2200D | Ungültiges Escape-Oktett | Ungültige Zeichenfolgen |
22025 | Ungültige Escape-Sequenz | Ungültige Zeichenfolgen |
22P06 | Nichtstandardmäßige Verwendung von Escape-Zeichen | Ungültige Zeichenfolgen |
22010 | Ungültiger Indikatorparameterwert | Ungültige Indikatoroperationen |
22023 | Ungültiger Parameterwert | Ungültige Parameteroperationen |
22013 | Ungültige vorhergehende oder folgende Größe | Ungültige Größenoperationen |
2201B | Ungültiger regulärer Ausdruck | Ungültige Zeichenfolgen |
2201W | Ungültige Zeilenanzahl in LIMIT-Klausel | Ungültige LIMIT-Operationen |
2201X | Ungültige Zeilenanzahl in OFFSET-Klausel | Ungültige OFFSET-Operationen |
2202H | Ungültiges Argument für TABLESAMPLE | Ungültige Stichprobenoperationen |
2202G | Ungültige Wiederholung für TABLESAMPLE | Ungültige Stichprobenoperationen |
22009 | Ungültiger Zeitzone-Verlagerungswert | Ungültige Zeitzone-Operationen |
2200C | Ungültige Verwendung von Escape-Zeichen | Ungültige Zeichenfolgen |
2200G | Typmismatch | Ungültige Typumwandlungen |
22004 | NULL-Wert nicht erlaubt | Ungültige NULL-Operationen |
22002 | NULL-Wert ohne Indikatorparameter | Ungültige NULL-Operationen |
22003 | Numerischer Wert außerhalb des gültigen Bereichs | Ungültige numerische Werte |
2200H | Sequenzgenerator-Limit überschritten | Ungültige Sequenzoperationen |
22026 | Ungleiches Zeichendatenlängenmismatch | Ungültige Zeichenfolgenoperationen |
22001 | Zeichendaten rechts abgeschnitten | Ungültige Zeichenfolgenoperationen |
22011 | Unterstring-Fehler | Ungültige Zeichenfolgenoperationen |
22027 | Trim-Fehler | Ungültige Zeichenfolgenoperationen |
22024 | Unbeendeter C-String | Ungültige Zeichenfolgen |
2200F | Zeichenfolge mit Länge Null | Ungültige Zeichenfolgen |
22P01 | Gleitkommensatz-Ausnahme | Ungültige mathematische Operationen |
22P02 | Ungültige Textdarstellung | Ungültige Textoperationen |
22P03 | Ungültige binäre Darstellung | Ungültige binäre Operationen |
22P04 | Ungültiges Kopierdateiformat | Ungültige Dateioperationen |
22P05 | Unübersetzbare Zeichen | Ungültige Zeichenfolgen |
2200L | Kein XML-Dokument | Ungültige XML-Operationen |
2200M | Ungültiges XML-Dokument | Ungültige XML-Operationen |
2200N | Ungültiger XML-Inhalt | Ungültige XML-Operationen |
2200S | Ungültiger XML-Kommentar | Ungültige XML-Operationen |
2200T | Ungültige XML-Verarbeitungsanweisung | Ungültige XML-Operationen |
22030 | Duplikate JSON-Objektschlüsselwerte | Ungültige JSON-Operationen |
22031 | Ungültiges Argument für SQL-JSON-Datumsfunktion | Ungültige JSON-Operationen |
22032 | Ungültiger JSON-Text | Ungültige JSON-Operationen |
22033 | Ungültiger SQL-JSON-Unterskript | Ungültige JSON-Operationen |
22034 | Mehr als ein SQL-JSON-Element | Ungültige JSON-Operationen |
22035 | Kein SQL-JSON-Element | Ungültige JSON-Operationen |
22036 | Nicht-numerisches SQL-JSON-Element | Ungültige JSON-Operationen |
22037 | Nicht eindeutige Schlüssel in einem JSON-Objekt | Ungültige JSON-Operationen |
22038 | Einzelnes SQL-JSON-Element erforderlich | Ungültige JSON-Operationen |
22039 | SQL-JSON-Array nicht gefunden | Ungültige JSON-Operationen |
2203A | SQL-JSON-Mitglied nicht gefunden | Ungültige JSON-Operationen |
2203B | SQL |