From: | Marcus Engene <mengpg(at)engene(dot)se> |
---|---|
To: | Bill Dika <wadika(at)gmail(dot)com> |
Cc: | PGSQL-Novice <pgsql-novice(at)postgresql(dot)org> |
Subject: | Re: Application using PostgreSQL as a back end (experienced |
Date: | 2005-11-19 22:45:42 |
Message-ID: | 437FAB16.5000702@engene.se |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-novice |
Bill Dika wrote:
> Thanks Nikola.
>
> Your explanation of layering was helpful. The consensus from you experts
> seems to be that I should keep the business rules and logic out of the
> database, so I will do that.
>
Hi,
Just a small note here. I've seen projects where exactly everything is
put into the application, including validations of data and such. The db
was basically a bit bucket with indexes. That turned out to be a
complete disaster. It's much harder to keep track of all validations in
the java/whatever code than letting the db do this for you.
It's very easy to add constraints, foreign keys and such to a db and
that should always be done. There are no excuse what so ever not to.
Everything you can validate (via CHECK(), fk, trigger, whatever) do it.
A db with errors is a nightmare to patch. It's much better to have the
application tell you it won't do an operation and you do a fix rather
than the application inserting errors silently.
Ok, this was the introductionary chapter of any db book. Sorry about
that. ;-)
Best regards,
Marcus
From | Date | Subject | |
---|---|---|---|
Next Message | me | 2005-11-20 00:31:57 | changing null-values' sort order |
Previous Message | Bill Dika | 2005-11-19 22:35:31 | Re: Application using PostgreSQL as a back end (experienced programmers please) |