This saves the network, the HTTP server, the database, and the enterprise from wasted processing just because the user made a typo. It also eliminates the user waiting for the error message and keeps them concentrated on their work, thus boosting the productivity of all involved. They also give a better message to the user than a database may (ugly error codes and messages too tied to SQL).
It is anticipated that an enterprise data object (stored procedure, database rule, or check) may do final validation. This is an optimal scenario: fast, efficient, and user friendly field check and enterprise rule so that all input operation logic is used every where). You can also apply validation logic in the server application process, but this is less desirable since logic tends to be duplicated.
Combining field checks with data format routines produces a very powerful mechanism.