Database IntegrityException

Fixes #2435: `yii\db\IntegrityException` is now thrown on database integrity errors instead of general `yii\db\Exception`