PostgresSQL: „Fehler: Spalte existiert nicht“ beim Löschen von Tabellendatensätzen
In Java, wenn versucht wird, Datensätze aus einer PostgreSQL-Tabelle zu löschen , kann ein „Fehler: Spalte existiert nicht“ ausgegeben werden. Dieser Fehler wird häufig auf in Großbuchstaben geschriebene Spaltennamen zurückgeführt.
PostgresSQL unterscheidet bei seinen Entitätsnamen (Tabellen, Spalten usw.) zwischen Groß- und Kleinschreibung. Um dieses Problem zu beheben, müssen in Großbuchstaben geschriebene Spaltennamen mit doppelten Anführungszeichen (") „escaped“ werden. Beispielsweise wird die folgende Abfrage erfolgreich ausgeführt:
String stm = "DELETE FROM hostdetails WHERE \"MAC\" = 'kzhdf'";
Darüber hinaus sollte der Wert bei Verwendung vorbereiteter Anweisungen verwendet werden nicht direkt innerhalb der SQL-Anweisung festgelegt werden, verwenden Sie stattdessen die Methode setString(), um den Parameterwert zu übergeben:
pst.setString(1, "kzhdf");
Das obige ist der detaillierte Inhalt vonWarum löst meine PostgreSQL-DELETE-Anweisung in Java den Fehler „Spalte existiert nicht' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!