Exception thrown when an attempt to 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, e.g.
DuplicateKeyException
. However, it is generally
recommended to handle
DataIntegrityViolationException
itself instead of relying on specific exception subclasses.