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.
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();
les utilisateurs peuvent rencontrez l'erreur :
SEVERE: ERROR: column "mac" does not exist
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'";
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();
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!