diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/support/SQLStateSQLExceptionTranslator.java b/spring-jdbc/src/main/java/org/springframework/jdbc/support/SQLStateSQLExceptionTranslator.java index 7497070debc..4d451573e74 100644 --- a/spring-jdbc/src/main/java/org/springframework/jdbc/support/SQLStateSQLExceptionTranslator.java +++ b/spring-jdbc/src/main/java/org/springframework/jdbc/support/SQLStateSQLExceptionTranslator.java @@ -90,8 +90,8 @@ public class SQLStateSQLExceptionTranslator extends AbstractFallbackSQLException ); private static final Set DUPLICATE_KEY_ERROR_CODES = Set.of( - 1, // Oracle - 301, // Sap Hana + 1, // Oracle + 301, // SAP HANA 1062, // MySQL/MariaDB 2601, // MS SQL Server 2627 // MS SQL Server @@ -163,12 +163,12 @@ public class SQLStateSQLExceptionTranslator extends AbstractFallbackSQLException /** - * Check whether the given SQL state (and the associated error code in case + * Check whether the given SQL state and the associated error code (in case * of a generic SQL state value) indicate a {@link DuplicateKeyException}: * either SQL state 23505 as a specific indication, or the generic SQL state - * 23000 with well-known vendor codes. + * 23000 with a well-known vendor code. * @param sqlState the SQL state value - * @param errorCode the error code value + * @param errorCode the error code */ static boolean indicatesDuplicateKey(@Nullable String sqlState, int errorCode) { return ("23505".equals(sqlState) || diff --git a/spring-jdbc/src/test/java/org/springframework/jdbc/support/SQLStateSQLExceptionTranslatorTests.java b/spring-jdbc/src/test/java/org/springframework/jdbc/support/SQLStateSQLExceptionTranslatorTests.java index 079fa6fe3d7..28758b87456 100644 --- a/spring-jdbc/src/test/java/org/springframework/jdbc/support/SQLStateSQLExceptionTranslatorTests.java +++ b/spring-jdbc/src/test/java/org/springframework/jdbc/support/SQLStateSQLExceptionTranslatorTests.java @@ -84,7 +84,7 @@ class SQLStateSQLExceptionTranslatorTests { assertTranslation("23000", 2627, DuplicateKeyException.class); } - @Test + @Test // gh-31554 void translateDuplicateKeySapHana() { assertTranslation("23000", 301, DuplicateKeyException.class); }