• A good business person recognizes when a project is a failure, cancels and starts over.

    A better business person recognizes that starting over is simply courting failure.

    The "let's start over" is worse than the "let's accept the current issues and try to improve what we can" method. Instead of continual improvement, even perhaps to a flawed system, you're going to have a time-lag until the new system is in place, and this lag can be fatal to the business.

    If we were talking about code, instead of databases, my advise would be to refactor instead of rewrite. When it comes to databases it's a little trickier, there are still options, one of which might be to just accept that the schema has flaws and live with them.