Bonjour,
j'ai sur une table un clé primaire étant numéric identity (l'équivalent d'une sequence oracle).
J'aurais deux questions à vous poser :
- Est-il possible de récupérer le numéro identity créé par SQL Server lors d'une requête INSERT INTO MA_TABLE VALUES (...) via la méthode executeUpdate du package java.sql.PreparedStatement ?
- Ensuite, est-il possible de désactiver l'incrémentation d'une identity lors d'une erreur survenue lors d'un INSERT ? Je m'explique :
A un instant x, mon identity vaut 10
J'insère un élément, mon identity est incrémenté et vaut 11
J'exécute un INSERT mais dont un champ est trop long ou constraint violation Foreign Key ... : mon identity est incrémenté alors que rien n'a été inséré dans ma table. Est-il possible de ne pas incrémenter cet identity lors d'une erreur d'INSERT ?
Merci pour vos réponses
Partager