| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: Multiplicity, Change and MV
x wrote:
> "Neo" <neo55592_at_hotmail.com> wrote in message > news:1145320787.580351.42240_at_i40g2000cwc.googlegroups.com... >
> > the database engine? If constraint enforcement is up to the application, and > more than one application exists for a particular database, then the exact > code required to enforce constraints must exist in each and every > application, otherwise consistency cannot be guaranteed. >
> > > I think you are right when you say the constraints are defined by the > applications. > But think about this scenario: > - one application define its constraints and enter the data according to > them > - other application define its constraints and enter the data according to > them > - the data from the two applications overlaps > - the common data entered by the second application is less constrained > - the first application query the common data > - the retrieved data don't follow the constraints of the first application > and the application was developed with the assumption it does > > Guess what will happen. > >
> > > Only lists of strings are needed :-) > >
> > > One goal of the RM was removing the dependency on the growth in data types. > :-)
Actually, boolean is mandated by the RM. Everything else is whatever one can imagine.
>>Another example of a fuzzy constraint is that RM and therefore RMDBs
>>requires data to be stored in relations were tuples must have values
>>for required attributes else incur NULL (or be substitued by masking
>>values). The exp db doesn't have relation-like constraints but could
>>add them making it behave similarly (and thus incur NULLs)!
>
> There is nothing bad about nulls.
I suggest you check out the various _Writings..._ books by Chris Date. The flaws in NULL and NVL for N > 2 have been well-argued.
> Only the SQL style null is bad. > You can choose if you prefer to use relations with nulls or sets of > relations.
Unfortunately, if your DMBS has to allow for NULL, it will generally not function as well as one that does not. Even if the DBMS implementation detects all cases without NULL for optimization purposes, the DBMS will require more executable code and have more branches of execution. As a general rule, these properties will translate into slower code (ie. more page faults) and buggier code (ie. less complete coverage during testing). Received on Tue Apr 18 2006 - 08:08:41 CDT
![]() |
![]() |