* __BREAKING:__ A `UniqueConstraintViolationError` may now contain different values, depending on whether the violated constraint was a composite across multiple columns or not. For single-column `UNIQUE` constraints, the `value` and `column` properties will still be present as before; however, for a composite constraint, those properties will be undefined and `values` and `columns` will be set instead.
* __Minor:__ Added support for detecting "undefined column" errors (as an `UndefinedColumnError`).
* __Patch:__ Fixed some incorrect internal function names.
This error is thrown when a query violates a foreign key constraint. In practice, this means that there's an attempt to point a foreign key at a non-existent entry (usually in another table).
@ -201,3 +220,13 @@ An `EnumError` will contain the following additional properties:
* __enumType:__ The name of the ENUM type for which an invalid value was inserted.
* __value:__ The value that caused the error.
* __query:__ The query that caused the error. This query may contain placeholders or be incomplete, and so is intended purely for reference purposes.
#### databaseError.UndefinedColumnError
This error is thrown when a query attempts to store a value into a column that doesn't exist. A typical cause of this is forgetting to update the database schema after updating an application.
An `UndefinedColumnError` will contain the following additional properties:
* __table:__ The table in which the value was attempted to be inserted.
* __table:__ The non-existent column in which the value was attempted to be inserted.
* __query:__ The query that caused the type error. This query may contain placeholders or be incomplete, and so is intended purely for reference purposes.