Re: The job of a relational DBMS

From: Ben Finney <bignose+hates-spam_at_benfinney.id.au>
Date: Tue, 01 Dec 2009 13:45:44 +1100
Message-ID: <87d42zo1if.fsf_at_benfinney.id.au>



Gene Wirchenko <genew_at_ocis.net> writes:

> On Tue, 01 Dec 2009 08:50:34 +1100, Ben Finney
> <bignose+hates-spam_at_benfinney.id.au> wrote:
>
> >joel garry <joel-garry_at_home.com> writes:
>
> [snip]
>
> >> Can't a function be part of the DBMS?
> >
> >A non-relational function shouldn't be part of a relational DBMS, no.

This was far too broad, I now see. Originally it was in the context of a *query* returning a non-relational result, which is really as far as I should have taken it.

> Addition of integral values is a function mapping two integral
> values to an integral value.

Right; of course, there are heaps of functions operating on attribute values that can be used *within* relational operations to modify the relation that will be returned. Such functions definitely belong as part of the relational DBMS.

What I was trying to express was that relational operations — like the various relational operations that ‘SELECT’ implements — should only return data as relations (they might also return status responses). They should never return non-relation data.

Transforming relational data into a non-relation is not the job of the relational DBMS, but the job of applications that receive relational data from the DBMS.

-- 
 \      “Anyone who believes exponential growth can go on forever in a |
  `\        finite world is either a madman or an economist.” —Kenneth |
_o__)                                                         Boulding |
Ben Finney
Received on Mon Nov 30 2009 - 20:45:44 CST

Original text of this message