Αναφορά κωδικών κατάστασης GQL

Όταν εκτελείτε ερωτήματα GQL στο Microsoft Fabric, λαμβάνετε πληροφορίες κατάστασης μαζί με το αποτέλεσμα. Ο δημόσιος κωδικός κατάστασης API ερωτήματος και η κανονική κατάσταση GQLSTATUS που αναφέρονται από τη μηχανή ερωτημάτων δεν είναι πάντα τα ίδια. Αυτό το άρθρο εξηγεί πώς να χρησιμοποιήσετε και τα δύο.

Κωδικοί κατάστασης API ερωτήματος

Το API ερωτήματος χρησιμοποιεί ένα μικρό σύνολο κωδικών στο πρωτεύον status.code πεδίο:

Κωδικός κατάστασης API Έννοια
00000 Επιτυχής ολοκλήρωση με τουλάχιστον μία σειρά αποτελεσμάτων.
00001 Επιτυχής ολοκλήρωση με παράλειψη αποτελέσματος. Προορίζεται για μελλοντική υποστήριξη DDL και DML.
01000 Μια προειδοποίηση ή μια ενημερωτική συνθήκη. Επιθεωρήστε την περιγραφή και τα διαγνωστικά.
02000 Προς το παρόν, δεν υπάρχουν διαθέσιμες γραμμές αποτελεσμάτων από ένα ερώτημα παραγωγής γραμμών. Εάν το αποτέλεσμα περιέχει nextPage, η εκτέλεση είναι ακόμα σε εξέλιξη και μπορείτε να κάνετε ψηφοφορία για το αποτέλεσμα.
42000 Ένα σφάλμα σύνταξης, κανόνα πρόσβασης ή άλλο σφάλμα ερωτήματος που μπορεί να διορθωθεί από το χρήστη.
50000 Σφάλμα συστήματος ή άλλως μη ταξινομημένο.

Για ευρεία ροή ελέγχου εφαρμογών, χρησιμοποιήστε status.codeτο . Μην αναλύετε την περιγραφή κατάστασης, επειδή το κείμενό της μπορεί να διαφέρει.

Κανονική μηχανή ερωτημάτων GQLSTATUS

Το API ερωτήματος διατηρεί την κανονική κατάσταση GQL από τη μηχανή ερωτημάτων στο _graphaneGqlStatus μέλος της εγγραφής κάθε αντικειμένου diagnostics κατάστασης:

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

Για παράδειγμα, η αριθμητική υπερχείλιση και η διαίρεση με το μηδέν είναι σφάλματα που μπορούν να διορθωθούν από τον χρήστη, επομένως και τα δύο χρησιμοποιούνται 42000 ως δημόσια status.code. Η διαγνωστική τιμή διακρίνει το κανονικό GQLSTATUS 22003 από 22012το .

Ο παρακάτω πίνακας παραθέτει κοινές κανονικές τιμές GQLSTATUS. Ο μηχανισμός ερωτημάτων μπορεί να αναφέρει πρόσθετες τιμές για πιο συγκεκριμένες συνθήκες.

GQLSTATUS Έννοια
00000 Επιτυχής ολοκλήρωση ερωτήματος με τουλάχιστον μία γραμμή.
00001 Επιτυχής ολοκλήρωση με παράλειψη αποτελέσματος.
02000 Συνθήκη χωρίς δεδομένα για ένα ερώτημα που παράγει γραμμές.
01M11 Ημιτελές αποτέλεσμα. Το αποτέλεσμα περικόπηκε.
22000 Γενική εξαίρεση δεδομένων. Αυτός ο κωδικός μπορεί να εμφανιστεί ως η αιτία μιας πιο συγκεκριμένης πρωτογενούς κατάστασης.
22003 Αριθμητική τιμή εκτός εύρους, συμπεριλαμβανομένης της υπερχείλισης σε σταθερά, λειτουργία, συγκεντρωτική τιμή ή μετάδοση.
22012 Διαίρεση με το μηδέν.
42000 Γενικό συντακτικό σφάλμα ή παραβίαση κανόνα πρόσβασης.
G2000 Παραβίαση τύπου γραφήματος.

Οι κύριες καταστάσεις, οι καταχωρήσεις στο additionalStatusesκαι οι ένθετες cause καταστάσεις έχουν η καθεμία τη δική της διαγνωστική εγγραφή και την κανονική κατάσταση GQL.