Maison > base de données > tutoriel mysql > Comment récupérer l'ID d'auto-incrémentation avec des instructions préparées en Java ?

Comment récupérer l'ID d'auto-incrémentation avec des instructions préparées en Java ?

Linda Hamilton
Libérer: 2024-11-15 04:57:02
original
983 Les gens l'ont consulté

How to Retrieve Autoincrement ID with Prepared Statements in Java?

Récupérer l'ID d'auto-incrémentation avec des instructions préparées en Java

Dans JDBC, l'obtention de la clé primaire générée automatiquement après une opération d'insertion est cruciale pour beaucoup candidatures. Cela se fait généralement en utilisant l'indicateur RETURN_GENERATED_KEYS avec createStatement(). Cependant, l'utilisation de cette approche avec des instructions préparées peut entraîner des erreurs, car les instructions préparées ne prennent pas en charge l'indicateur RETURN_GENERATED_KEYS par défaut.

Heureusement, il existe une solution pour récupérer l'ID généré automatiquement à l'aide d'instructions préparées. En ajoutant l'indicateur Statement.RETURN_GENERATED_KEYS comme deuxième paramètre à la méthode prepareStatement(), vous pouvez activer cette fonctionnalité. Voici comment modifier le code que vous avez fourni :

String sql = "INSERT INTO table (column1, column2) values(?, ?)";
stmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

stmt.executeUpdate();
if (returnLastInsertId) {
   ResultSet rs = stmt.getGeneratedKeys();
   rs.next();
   auto_id = rs.getInt(1);
}
Copier après la connexion

Maintenant, lorsque vous exécutez l'instruction préparée, la méthode stmt.getGeneratedKeys() renverra un ResultSet contenant l'ID généré automatiquement. Cela vous permet de récupérer l'identifiant et de l'utiliser selon vos besoins dans votre application.

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