Heim >Datenbank >MySQL-Tutorial >Wie behebe ich den PostgreSQL-Fehler „Spalte existiert nicht' in Java?
Behebung des Fehlers „Spalte existiert nicht“ in Postgresql
Obwohl eine Verbindung zwischen PostgreSQL und Java hergestellt wurde, tritt beim Versuch, dies zu tun, ein Fehler auf Führen Sie einen Löschvorgang mit der Meldung „Spalte ‚mac‘ existiert nicht“ durch. Dieses Problem ist trotz der Existenz der MAC-Spalte in der Tabelle auf die Groß-/Kleinschreibung von Postgresql-Entitätsnamen zurückzuführen.
Um dieses Problem zu beheben, schließen Sie Spaltennamen in doppelte Anführungszeichen („“) ein, wenn sie Großbuchstaben enthalten . Ändern Sie in Ihrem Fall die Abfrage wie folgt:
String stm = "DELETE FROM hostdetails WHERE \"MAC\" = 'kzhdf'";
Um die Sicherheit zu erhöhen und SQL-Injection-Schwachstellen zu verhindern, verwenden Sie außerdem vorbereitete Anweisungen und legen Sie Werte über Parameter fest:
con = DriverManager.getConnection(url, user, password); String stm = "DELETE FROM hostdetails WHERE \"MAC\" = ?"; pst = con.prepareStatement(stm); pst.setString(1, "kzhdf"); pst.executeUpdate();
Dieser Ansatz stellt eine genaue Übereinstimmung zwischen Spaltenname und -wert sicher, vermeidet den Fehler „Spalte existiert nicht“ und erhöht die Sicherheit Ihres Codes.
Das obige ist der detaillierte Inhalt vonWie behebe ich den PostgreSQL-Fehler „Spalte existiert nicht' in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!