Referenz zu GQL-Statuscodes

Wenn Sie GQL-Abfragen in Microsoft Fabric ausführen, erhalten Sie Statusinformationen zusammen mit dem Ergebnis. Der öffentliche Statuscode der Abfrage-API und der kanonische GQLSTATUS, der von der Abfrage-Engine gemeldet wird, sind nicht immer gleich. Dieser Artikel erklärt, wie man beides verwendet.

Abfragen von API-Statuscodes

Die Abfrage-API verwendet eine kleine Menge von Codes im primären status.code Feld:

API-Statuscode Bedeutung
00000 Erfolgreicher Abschluss mit mindestens einer Ergebniszeile.
00001 Erfolgreicher Abschluss mit ausgeschlossenem Ergebnis. Reserviert für zukünftige DDL- und DML-Unterstützung.
01000 Eine Warnung oder Informationsbedingung. Überprüfen Sie die Beschreibung und die Diagnostik.
02000 Derzeit sind keine Ergebniszeilen von einer zeilenerzeugenden Abfrage verfügbar. Wenn das Ergebnis enthält nextPage, ist die Ausführung noch im Gange und du kannst nach dem Ergebnis abfragen.
42000 Ein Syntax-, Zugriffs-Regel- oder ein anderer vom Benutzer korrigierbarer Abfragefehler.
50000 Ein System- oder anderweitig nicht klassifizierter Fehler.

Für den breiten Anwendungskontrollfluss verwenden status.codeSie . Lesen Sie die Statusbeschreibung nicht, da ihr Text variieren kann.

Kanonischer Abfrage-Engine GQLSTATUS

Die Query API bewahrt den kanonischen GQLSTATUS von der Abfrage-Engine im _graphaneGqlStatus Mitglied des jeweiligen Statusobjekt-Datensatzes diagnostics :

"_graphaneGqlStatus": {
  "gqlType": "STRING",
  "value": "22012"
}

Zum Beispiel sind numerischer Überlauf und Division durch Null benutzerkorrigierbare Fehler, daher verwenden 42000 beide als das öffentliche status.code. Der diagnostische Wert unterscheidet den kanonischen GQLSTATUS 22003 von 22012.

Die folgende Tabelle listet gängige kanonische GQL-Statuswerte auf. Die Abfrage-Engine kann zusätzliche Werte für spezifischere Bedingungen melden.

GQLSTATUS Bedeutung
00000 Erfolgreicher Abschluss der Abfrage mit mindestens einer Zeile.
00001 Erfolgreicher Abschluss mit ausgeschlossenem Ergebnis.
02000 Keine Datenbedingung für eine zeilenerzeugende Abfrage.
01M11 Unvollständiges Ergebnis. Das Ergebnis wurde verkürzt.
22000 Allgemeine Datenausnahme. Dieser Code kann als Ursache einer spezifischeren Primärerkrankung erscheinen.
22003 Numerischer Wert außerhalb des Bereichs, einschließlich Überlauf in einem Literal, Operation, Aggregat oder Cast.
22012 Division durch Null.
42000 Allgemeine Syntaxfehler oder Zugriffsregelverletzung.
G2000 Verstoß gegen den Graphentyp.

Primärstatusse, Einträge in additionalStatuses, und verschachtelte cause Statusse haben jeweils ihren eigenen Diagnosedatensatz und kanonischen GQLSTATUS.