Maison >base de données >tutoriel mysql >Pourquoi mon instruction PostgreSQL DELETE génère-t-elle une erreur « La colonne n'existe pas » en Java ?

Pourquoi mon instruction PostgreSQL DELETE génère-t-elle une erreur « La colonne n'existe pas » en Java ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-24 13:04:14273parcourir

Why Does My PostgreSQL DELETE Statement Throw a

PostgresSQL : "Erreur : la colonne n'existe pas" lors de la suppression d'enregistrements de table

En Java, lors d'une tentative de suppression d'enregistrements d'une table PostgreSQL , une « Erreur : la colonne n'existe pas » peut être renvoyée. Cette erreur est souvent attribuée aux noms de colonnes écrits en majuscules.

PostgresSQL est sensible à la casse pour ses noms d'entités (tables, colonnes, etc.). Pour résoudre ce problème, les noms de colonnes écrits en majuscules doivent être « échappés » à l'aide de guillemets doubles ("). Par exemple, la requête suivante s'exécutera avec succès :

String stm = "DELETE FROM hostdetails WHERE \"MAC\" = 'kzhdf'";

De plus, à l'aide d'instructions préparées, la valeur doit ne doit pas être défini directement dans l'instruction SQL. Utilisez plutôt la méthode setString() pour transmettre la valeur du paramètre :

pst.setString(1, "kzhdf");
.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn