Heim > Datenbank > MySQL-Tutorial > Warum schlägt meine PostgreSQL-INSERT-Anweisung mit „FEHLER: Spalte „Benutzer2' existiert nicht' fehl?

Warum schlägt meine PostgreSQL-INSERT-Anweisung mit „FEHLER: Spalte „Benutzer2' existiert nicht' fehl?

Barbara Streisand
Freigeben: 2024-12-30 22:58:10
Original
568 Leute haben es durchsucht

Why Does My PostgreSQL INSERT Statement Fail with

Daten können nicht eingefügt werden: Fehler „FEHLER: Spalte „Wert“ existiert nicht“

Beim Versuch, Daten in die Spalte „Benutzer“ einzufügen "-Tabelle mit der folgenden Abfrage:

INSERT INTO users (user_name, name, password,email) 
    VALUES ("user2", "first last", "password1", "[email protected]");
Nach dem Login kopieren

Benutzer erhalten eine Fehlermeldung mit der Meldung: „FEHLER: Spalte „Benutzer2“ funktioniert nicht nicht existieren.“ Dieser Fehler weist darauf hin, dass die in der Abfrage angegebene Spalte („user2“) mit keiner vorhandenen Spalte in der Tabelle „users“ übereinstimmt.

Bei der Untersuchung des Tabellenschemas stellen wir fest, dass die Spalte „user_name“ definiert ist als „Zeichen variierend (50)“, was bedeutet, dass es Textdaten akzeptiert. In unserer Abfrage versuchen wir jedoch, die Zeichenfolge „user2“ einzufügen, ohne sie in einfache Anführungszeichen zu setzen. Hier tritt der Fehler auf.

Korrekte Abfrage mit einfachen Anführungszeichen:

Gemäß der PostgreSQL-Konvention müssen Zeichenkonstanten in einfache Anführungszeichen eingeschlossen werden. Daher sollte die korrigierte Abfrage wie folgt lauten:

INSERT INTO users(user_name, name, password,email) VALUES ('user2','first last','password1', '[email protected]' );
Nach dem Login kopieren

Indem wir den Wert „user2“ in einfache Anführungszeichen setzen, weisen wir PostgreSQL explizit darauf hin, dass es sich um eine Zeichenkonstante und nicht um einen Spaltennamen handelt.

Zusätzliche Hinweise:

  • Weitere Erläuterungen finden Sie in der PostgreSQL-Dokumentation zu Zeichenkonstanten: postgresql.org/docs/current/static/datatype-character.html
  • Seien Sie vorsichtig, wenn Sie doppelte Anführungszeichen mit PostgreSQL verwenden, da diese normalerweise für Bezeichner (z. B. Tabellennamen, Spaltennamen) reserviert sind. . Die Verwendung von doppelten Anführungszeichen für Zeichenkonstanten kann zu unerwarteten Fehlern führen.

Das obige ist der detaillierte Inhalt vonWarum schlägt meine PostgreSQL-INSERT-Anweisung mit „FEHLER: Spalte „Benutzer2' existiert nicht' fehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage