Re: Foreign key in Oracle Sql

From: Christopher Browne <cbbrowne_at_acm.org>
Date: 15 Jan 2005 05:39:38 GMT
Message-ID: <34rokqF4fsrrjU1_at_individual.net>


Clinging to sanity, "David Cressey" <david.cressey_at_earthlink.net> mumbled into her beard:
> "-CELKO-" <jcelko212_at_earthlink.net> wrote in message
>> Do you have operations that expose a physical ordering in the
>> storage, such as the row number? Can you do subqueries? Is there
>> an optimizer?
>
> Operations that expose a physical ordering: bad idea, agreed. But
> you don't have to use them, do you?

> Subqueries: I take it you mean incomplete support for SQL. If so,
> agreed. No Optimizer: As you know, if you know me, I really, really
> like a good optimizer. So, in terms of "goodness" I rate the
> quality of the optimizer very highly. But an optimizer is a "good
> feature", not a "relational feature". A real engine minus the
> optimizier is still a real engine. Just real slow.

There's a "relational problem" in not having an optimizer...

That problem is that it means that implementation of the query processor becomes necessarily visible to applications.

In order to use a system in a fashion that _isn't_ "real slow," you have to embed a more or less full understanding of how queries are processed into the application itself.

A common feature of applications written for MySQL(tm) is that, over time, they become more and more attuned to its behaviour. If the application is pointed to another database product, it's obviously not specifically coded to that product's strengths, which tends to mean sucky performance.

With Oracle(tm), it tends to be similar, where there are numerous temptations to use dramatically non-portable mechanisms to improve performance.

Either way, this violates the principle of "Physical Data Independence," where it should be possible to change the underlying architecture of access methods or hardware without affecting how the application accesses it.

-- 
output = ("cbbrowne" "_at_" "gmail.com")
http://www.ntlug.org/~cbbrowne/unix.html
"How should I know if it  works?  That's what beta testers are for.  I
only  coded  it."   (Attributed  to  Linus Torvalds,  somewhere  in  a
posting)
Received on Sat Jan 15 2005 - 06:39:38 CET

Original text of this message