Constraints can mean an innocuous looking assignment to a simple variable raises an integrity constraint violation exception
x = 10; // CRASH!
That makes the code a minefield - it might look safe, but it's not.