| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: Navigation question
"dawn" <dawnwolthuis_at_gmail.com> wrote in message
news:1172027698.109823.138620_at_a75g2000cwd.googlegroups.com...
> On Feb 20, 3:09 pm, "Walt" <wami..._at_verizon.net> wrote:
> > "dawn" <dawnwolth..._at_gmail.com> wrote in message
> >
> > news:1171997326.875046.286230_at_k78g2000cwa.googlegroups.com...
> >
> >
> >
> > > On Feb 20, 11:57 am, "Walt" <wami..._at_verizon.net> wrote:
> > > > "Andy Dingley" <ding..._at_codesmiths.com> wrote in message
> >
> > > >news:1171990396.924858.28580_at_p10g2000cwp.googlegroups.com...> On 14
Feb,
> > 19:47, "Marshall" <marshall.spi..._at_gmail.com> wrote:
> >
> > > > > > select * from orders where date > '2006-01-01' and status =
> > > > > > 'fulfilled' and customerid = 1234
> >
> > > > > > You say what you want and you get just that. No sifting
> > > > > > through stuff you don't want; no navigating.
> >
> > > > > Why is that good though? Because it avoids navigation, or because
it
> > > > > avoids round-tripping?
> > > > > IMHO it's avoiding the second thhat is the advantage here, not the
> > > > > first
> >
> > > > Neither of the above. It's good because it does not require the
inquirer
> > to
> > > > know about anything other than the data.
> >
> > > Good, that is a common way I have heard it expressed. However, I do
> > > not see how the developer needs to know less about the logical data
> > > model when using JOIN statements than if using "navigation" in the
> > > form of link information. It is the same information, formulated
> > > differently.
> >
> > > If you put everything in a single view, then the inquirer is shielded
> > > from having to know the base table for each attribute, but use of such
> > > views in application code does not seem all that common, especially
> > > not for read/write.
> >
> > > > "Navigation" as commonly used around here, means following "paths"
> > between
> > > > the data. If the inquirer has to navigate, the inquirer has to
know
> > about
> > > > the available paths. Not having to know that stuff is an advantage.
> > It's
> > > > an advantage for several reasons. One of them is, possibly,
> > performance.
> > > > But this isn't the big reason. The big reason is independence.
> >
> > > If there were no join statements in SQL statements in application
> > > code, then I could agree that this independence is accomplished. But
> > > there are, so it isn't. In that case, is a join statement "just as
> > > bad as" navigation from your perspective?
> >
> > No.
> >
> > Joins create some logical data dependency. Navigation by means other
than
> > the data would create physical data dependency.
>
>> >
> > At least the SQL query writer is guaranteed (barring some pathological
> > cases) physical data independence.
>
The best way to fully understand the argument is to find a database & application suite that used the concepts well, designed properly, and acheived success. If you can't find any such application, I suggest you look harder. Received on Wed Feb 21 2007 - 09:12:18 CST
![]() |
![]() |