Heim > Datenbank > MySQL-Tutorial > Warum gibt mein Java-Code beim Löschen aus PostgreSQL den Fehler „Spalte existiert nicht' aus?

Warum gibt mein Java-Code beim Löschen aus PostgreSQL den Fehler „Spalte existiert nicht' aus?

Mary-Kate Olsen
Freigeben: 2024-12-27 05:43:13
Original
306 Leute haben es durchsucht

Why Does My Java Code Throw a

Fehler: Spalte existiert nicht beim Löschen aus PostgreSQL mit Java

Einführung

Das Verbinden von Java-Programmen mit PostgreSQL und das Durchführen von CRUD-Operationen ist für viele unerlässlich Anwendungen. Dieser Artikel befasst sich mit einem häufigen Fehler, der beim Versuch auftritt, Daten aus einer PostgreSQL-Tabelle mit Java zu löschen.

Der Fehler

Bei der Ausführung des folgenden Codes:

con = DriverManager.getConnection(url, user, password);
String stm = "DELETE FROM hostdetails WHERE MAC = 'kzhdf'";
pst = con.prepareStatement(stm);
pst.executeUpdate();
Nach dem Login kopieren

Benutzer könnten Es tritt der Fehler auf:

SEVERE: ERROR: column "mac" does not exist
Nach dem Login kopieren

Lösung

Bei der Verwendung von PostgreSQL werden Entitätsnamen (z B. Tabellen und Spalten) mit Großbuchstaben müssen durch doppelte Anführungszeichen („“) „escaped“ werden. Daher lautet der richtige Code:

String stm = "DELETE FROM hostdetails WHERE \"MAC\" = 'kzhdf'";
Nach dem Login kopieren

Best Practice für vorbereitete Anweisungen

Zusätzlich wird empfohlen, vorbereitete Anweisungen für mehr Sicherheit und Leistung zu verwenden. Der Code sollte wie folgt aktualisiert werden:

con = DriverManager.getConnection(url, user, password);
String stm = "DELETE FROM hostdetails WHERE \"MAC\" = ?";
pst = con.prepareStatement(stm);
pst.setString(1, "kzhdf");
pst.executeUpdate();
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum gibt mein Java-Code beim Löschen aus PostgreSQL den Fehler „Spalte existiert nicht' aus?. 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