Re: Separate PK in Jxn Tbl?
Date: Fri, 01 Feb 2008 13:52:08 -0500
> On Jan 31, 4:59 pm, "Brian Selzer" <br..._at_selzer-software.com> wrote:
>>Constraints should always be checked by the DBMS, not by applications. If
>>you have two separate applications that manipulate the same table, and one
>>enforces one constraint while another enforces another, then all you need to
>>do to bypass one constraint is to use the other application! What, then, is
>>the point of even having the constraint?
> I think that application constraints and database constraints are
> two entirely separate things. The fact that they may be structurally
> identical obscures and confuses this point. (Hence Brian's entirely
> reasonable rhetorical question above.)
> What, indeed, is the point of having one application and not another
> enforce a constraint, *if we view this from the perspective of the
> requirements of the database* Clearly there is none. However
> individual applications may have requirements that are best
> implemented as constraints *within the application.* I call these
> "application constraints" because they are specific to the
> application. They are *not* integrity constraints, even if we
> are using identical mechanisms (in different locations) for both.
I think you're on to something. Making a distinction between database constraints and application constraints helps me clarify my thinking. Being able to "reflect" database constraints to keep applications in synch with changes sounds like a great idea.
James A. Fortune
MPAPoster_at_FortuneJames.com Received on Fri Feb 01 2008 - 19:52:08 CET