Maison > base de données > tutoriel mysql > Pourquoi mon code Java génère-t-il une erreur « La colonne n'existe pas » lors de la suppression de PostgreSQL ?

Pourquoi mon code Java génère-t-il une erreur « La colonne n'existe pas » lors de la suppression de PostgreSQL ?

Mary-Kate Olsen
Libérer: 2024-12-27 05:43:13
original
264 Les gens l'ont consulté

Why Does My Java Code Throw a

Erreur : la colonne n'existe pas lors de la suppression de PostgreSQL avec Java

Introduction

La connexion des programmes Java à PostgreSQL et l'exécution d'opérations CRUD sont essentielles pour de nombreux candidatures. Cet article traite d'une erreur courante rencontrée lors de la tentative de suppression de données d'une table PostgreSQL à l'aide de Java.

L'erreur

Lors de l'exécution du code suivant :

con = DriverManager.getConnection(url, user, password);
String stm = "DELETE FROM hostdetails WHERE MAC = 'kzhdf'";
pst = con.prepareStatement(stm);
pst.executeUpdate();
Copier après la connexion

les utilisateurs peuvent rencontrez l'erreur :

SEVERE: ERROR: column "mac" does not exist
Copier après la connexion

Solution

Lors de l'utilisation de PostgreSQL, les noms d'entités (tels que les tableaux et les colonnes) avec des lettres majuscules doivent être « échappées » à l'aide de guillemets doubles (« »). Par conséquent, le code correct est :

String stm = "DELETE FROM hostdetails WHERE \"MAC\" = 'kzhdf'";
Copier après la connexion

Meilleures pratiques en matière de déclaration préparée

De plus, il est recommandé d'utiliser des instructions préparées pour une meilleure sécurité et de meilleures performances. Le code doit être mis à jour comme suit :

con = DriverManager.getConnection(url, user, password);
String stm = "DELETE FROM hostdetails WHERE \"MAC\" = ?";
pst = con.prepareStatement(stm);
pst.setString(1, "kzhdf");
pst.executeUpdate();
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal