PostgreSQL ERROR FATAMILED ARRAY Literal

PostgreSQL ERROR FATAMILED ARRAY Literal
Menschen werden geboren, um Fehler zu machen. Wenn Sie einen Code machen, machen Sie schließlich auch Fehler, die Sie zu einigen Fehlern führen, ich.e., logisch, syntax und technisch. Wie in jeder Sprache gibt es auch eine Datenbank mit vielen Fehlern. Die PostgreSQL -Datenbank ist voll von solchen Fehlern, die wir täglich erhalten. Einer dieser Fehler ist "missgebildetes Array buchstäblich". Die Ursachen dieses Fehlers in der PostgreSQL -Datenbank können viele sein. Wir müssen nur all diese Ursachen herausfinden und den Fehler entfernen. Heute haben wir beschlossen, diesen Artikel für unsere Benutzer abzudecken, die dem PostgreSQL -Datenbankfehler unbekannt sind: Fehlformiert Array Literal. Lassen Sie uns sehen, wie wir es in der postgreSQL pgamdin -grafischen Benutzeroberfläche begegnen und lösen können.

Beginnen wir mit dem Start Ihrer installierten PostgreSQL -Datenbank, indem Sie sie über die Suchleiste des Vorderbildschirms Windows 10 Desktop durchsuchen. Schreiben Sie in der Suchleiste Ihres Windows 10 -Desktops (in der linken unteren Ecke) "Pgadmin". Das Popup für die Anwendung „PGADMIN 4“ der PostgreSQL-Datenbank wird angezeigt. Sie müssen darauf klicken, um es auf Ihrem System zu öffnen. Es wird 20 bis 30 Sekunden verwendet, um sich selbst zu öffnen. Beim Öffnen werden Ihnen das Dialogfeld angezeigt, um Ihr Passwort für den Datenbankserver einzugeben. Sie müssen das Passwort schreiben, das Sie bei der Installation der PostgreSQL -Datenbank eingegeben haben. Nach dem Hinzufügen des Datenbankserverkennworts ist der Server für unsere Verwendung bereit. Erweitern Sie die Datenbanken in der Option Server am linken Bereich von PostgreSQL. Wählen Sie die Datenbank Ihrer Wahl, um daran zu arbeiten. Wir haben die Datenbank "aqsayasin" von unserem Datenbankserver ausgewählt. Öffnen Sie nun die ausgewählte Datenbank „Abfragetool“, indem Sie auf das Symbol des "Abfragetools" in der oberen Taskleiste klicken. Es wird den Abfragebereich geöffnet, um einige Aufgaben durch Befehle in der Datenbank zu erledigen.

Beispiel 01:

Die allererste und ozidierteste Ursache eines Fehler. Lassen Sie uns die Situation so etwas machen und sie danach lösen. Wir benötigen eine Tabelle mit einer JSON -Spalte, um JSON -Daten zu verwenden. Somit haben wir in der Datenbank „Aqsayasin“ eine neue Tabelle mit dem Namen „Missstand“ mit dem Befehl create table erstellt erstellt. Diese Tabelle wurde mit drei verschiedenen Spalten erstellt. Die erste Spalte, "ID", ist ein einfacher Ganzzahl -Typ, und die zweite Spalte "Name" enthält Textarray -Typ. Die letzte Spalte, "Info". Tippen Sie auf die Schaltfläche "PostgreSQL" "Ausführen" von der Taskleiste aus "Ausführen". Sie werden sehen, dass die leere Tabelle „missgebildet“ gemäß der darunter.

Fügen wir einige Datensätze in die Spalte "INFO" der Tabelle "Fehlformiert" ein, die den Einfügen in die Anweisung im Abfragetool abgeben. Wir geben keine Datensätze in die Spalte "Array Type" "Name" ein, da wir die Datensätze der JSONB -Spalte "Info" später kopieren werden. Somit haben wir die JSON -Daten in die Spalte "Info" und den Ganzzahlwert in die Spalte "ID" hinzugefügt. Es war ziemlich einfach, das Schlüsselwort „Werte“ zu verwenden und war gemäß der folgenden Ausgabe erfolgreich.

Um den fehlerhaften Array -Literalfehler zu erhalten, müssen wir das falsche Abfrageformat im Abfragetool verwenden. Daher haben wir die Aktualisierungsanweisung verwendet, um die Datensätze der Tabelle "missgebildet" zu ändern. Wir verwenden das Schlüsselwort "Set", um den Array -Datensatz "Name" als Text aus der Info -Spalte in die Spalte "Name" zu geben, die derzeit leer ist. Bei der Ausführung dieser Anweisung haben wir festgestellt, dass diese Art, JSON-Daten in eine Array-Spalte zu kopieren, einen Fehler „Fehlformiert Array Literal“ wirft, das ein Fehler veranstaltet. Wir müssen das Format des Kopierens der Daten bisher ändern.

Um die JSONB-Spaltendaten in eine Spalte vom Array-Typ zu kopieren. Daher haben wir den Befehl update verwendet, um die Tabelle "missgebildet" zu ändern. Das Set -Schlüsselwort weist den Datensatz dem Spalte "Name" des Array -Typs zu. Während der Zuweisung verwendet es die Funktion und übersetzt die Funktion. In der Übersetzungsfunktion werden die JSON -Daten für die Spalte "Info" in den Array -Typ konvertiert. Danach addiert die Concat -Funktion die übersetzten Daten in Form eines Arrays zu einer, so dass sie in der Spalte „Name“ gespeichert werden kann. Der Fehler wurde zur Ausführung entfernt und die Daten wurden ordnungsgemäß kopiert.

Zeigen wir die Tabelle "missgebildete" Daten auf unserem Pgadmin -GUI -Bildschirm mit der unten angegebenen Anweisung "Auswählen" an. Sie können sehen, dass die JSON -Daten aus der Spalte "Info" erfolgreich in die Spalte "Name" "Name" kopiert werden.

Beispiel 02:

Eine andere Möglichkeit, diesen Fehler in Ihrer Datenbank zu erhalten. Daher werden wir die Auswahlarray -Abfrage verwenden, um die Array -Werte 11 und 25 innerhalb von quadratischen Klammern zu einem Wert in einzelnen invertierten Kommas zusammenzufassen, i.e., 78 getrennt durch das "||" unter der Spalte "Array" unterschreiben. Die Ausführung dieser Abfrage führt zu den gleichen Fehlern.

Um diesen Fehler zu beheben, müssen Sie den Wert nach "||" hinzufügen in lockige Klammern innerhalb der einzelnen invertierten Kommas als '78'. Bei der Ausführung sehen Sie, dass das Array unter der Spalte "Array" als "11,25,78" gebildet wird.

Nehmen wir eine weitere Illustration, um den Fehler zu erhalten: Missgebildete Array buchstäblich. So haben wir das Array in einer quadratischen Klammer mit der None zusammengefasst, ich.e., leerer Wert in einzelnen Kommas. Beim Ausführen dieser Anweisung haben wir den gleichen fehlerhaften Array -Literalfehler auf der Ausgabe festgestellt.

Um unser System aus diesem Fehler wiederherzustellen, werden wir das leere umgekehrte Kommas durch das Schlüsselwort „Null“ im folgenden Abbildungsbild ersetzen. Bei der Ausführung dieser Anweisung haben wir das Array 11,25 'unter der Spalte „Array“ im Ausgabebereich.

Beispiel 03:

Nehmen wir das letzte Beispiel, um den Fehler zu erhalten: Missgebildete Array buchstäblich und löst ihn durch. Angenommen, Sie haben eine Tabelle mit dem Namen "FTest" in Ihrer Datenbank mit einigen Datensätzen. Abrufen Sie alle ihre Datensätze mit der unten angegebenen Anweisung aus. Es ist in Ordnung, wenn Sie alle Datensätze ohne Bedingung gemäß der folgenden Anweisung im Abfragewerkzeug abrufen.

Lassen Sie uns alle Datensätze dieser Tabelle von ID 1 bis 4 unter Verwendung der Bedingung der WHERE -Klausel abrufen. Die IDs wurden in den einfachen Klammern innerhalb einzelner invertierter Kommas erwähnt. Aber es führt uns zu einem fehlerhaften Array -Literalfehler.

Um diesen Fehler zu beheben, müssen wir zwei Bedingungen und den Bediener in der WHERE -Klausel der Auswahlanweisung kombinieren. Diesmal funktionierte unsere Anfrage stark und zeigte die Datensätze von ID 3 bis 5.

Abschluss:

Endlich! Wir haben die Erläuterung der Lösung des PostgreSQL -Fehlers „Fehlformiert Array Literal“ abgeschlossen. Wir haben drei der verschiedenen Szenarien besprochen, die diesen Fehler in der PostgreSQL -Datenbank verursachen können. Wir haben auch die Lösungen für alle Szenarien behandelt, die diesen Fehler verursachen können. Daher wissen wir, dass Sie all diese Beispiele leicht zu verstehen und eine neue Sache in der PostgreSQL -Datenbank zu verstehen und zu lernen.