Package org.springframework.dao

# Class DataIntegrityViolationException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
org.springframework.core.NestedRuntimeException
org.springframework.dao.DataAccessException
org.springframework.dao.NonTransientDataAccessException
org.springframework.dao.DataIntegrityViolationException

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `DuplicateKeyException`

public class DataIntegrityViolationException extends NonTransientDataAccessException
Exception thrown when an attempt to execute an SQL statement fails to map the given data, typically but no limited to an insert or update data results in violation of an integrity constraint. Note that this is not purely a relational concept; integrity constraints such as unique primary keys are required by most database types.

Serves as a superclass for more specific exceptions, for example, `DuplicateKeyException`. However, it is generally recommended to handle `DataIntegrityViolationException` itself instead of relying on specific exception subclasses.

Author:
  Rod Johnson
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`DataIntegrityViolationException(String msg)`
Constructor for DataIntegrityViolationException.
`DataIntegrityViolationException(String msg, Throwable cause)`
Constructor for DataIntegrityViolationException.

## Method Summary

### Methods inherited from class org.springframework.core.NestedRuntimeException

`contains, getMostSpecificCause, getRootCause`

### Methods inherited from class java.lang.Throwable

`addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### DataIntegrityViolationException

public DataIntegrityViolationException(@Nullable String msg)
Constructor for DataIntegrityViolationException.

Parameters:
  `msg` - the detail message

### DataIntegrityViolationException

public DataIntegrityViolationException(@Nullable String msg, @Nullable Throwable cause)
Constructor for DataIntegrityViolationException.

Parameters:
  `msg` - the detail message
  `cause` - the root cause from the data access API in use