Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Looking for a way to implement SQL-92 Domain

Re: Looking for a way to implement SQL-92 Domain

From: Nuno Souto <wizofoz2k_at_yahoo.com.au>
Date: 26 Mar 2003 20:32:16 -0800
Message-ID: <73e20c6c.0303262032.4af1938c@posting.google.com>


"Paul Brewer" <paul_at_paul.brewers.org.uk> wrote in message news:<3e8225fb_1_at_mk-nntp-1.news.uk.worldonline.com>...

>
> I moved from (the equivalent of) triggers (coded in COBOL) on a minicomputer
> RDBMS to Oracle in the late 7.* days. I saw Oracle's declarative referential
> integrity, and thought "this must be too good to be true".

Hehehe! I thought same way when I saw Oracle's triggers! Prime Information (Pick) wasn't the best thing in the world at implementing declarative RI...
Mind you, I didn't waste too much time on it: went from Codasyl to Oracle's relational and it slid in like greased lightning. Much better implemented anyway than Ingres or Pick ever did...

> But it worked! You couldn't declare a constraint which wasn't true, but once
> yuo'd cleaned up your data it was rigorously enforced (yes, I know there are
> exceptions nowadays).

Akshally, that stuff about the type column and the key column being enough for the RI on a domain table? I forgot to make one more case for surrogate keys: if you use them, then all you need as FK is one column! ;)
Not exactly ground-breaking, but makes life easier.

>
> But one's data, cleaned upon entry to the database, remained clean and
> consistent.

Yeah! Such a small detail, no? :)

> And this is why I hate Peoplesoft, and all the other crappy applications
> which try (and invariably fail) to do it from the client side. Why can't
> they handle Oracle errors gracefully? Surely this is easy enough? Then they
> could say "This Widget already exists; please try again with a different Wid
> get Number" - or some such.

Dunno. It's a mistery to me how their designers (and a LOT of others) can claim that avoiding declarative server RI helps to maintain their apps portable. It's as bogus as can get! That's no portability: that's re-inventing boiled water.

Cheers
Nuno Souto
wizofoz2k_at_yahoo.com.au.nospam Received on Wed Mar 26 2003 - 22:32:16 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US