I had a lively debate today with a db admin when I told him to remove all his check and exclusions constraints from a production postgres database, along with any domains, because the client application was already handling the business logic.
I can understand why to him my request (in the tone of a demand) seemed insane. I could have just asked him to close his eyes when crossing the street because I was holding his hand. But in all truth, I'm tired of db admins introducing bugs into the system and not being held accountable. And I'm red-eyed concerning this particular db admin. In the end it's always on us with calls from the dept with "your application stopped working again!"... for the nth time this year.
Word of advice: If you are not moving your entire business logic to the database side, do not add ANY business logic to the database side, beyond that which is required to maintain data hierarchy rules.
Do not add even seemingly innocuous stuff like a check constraint to test if an integer value is positive. Because the client application is handling the business logic, it will have to do all those things already. And no one benefits from a system the implements business rules in two different places. Especially when those rules are always changing.