> You are right, poor design and implementation by my predesessors.  My
> point being that the tool I have to use doesn't give me the power and
> flexibility that all the other tools I could be using do.

The relational model is not necessarily about flexibility, it is about
contstraining data to fit the model and having that work done declaritevly
at the engine level.  That is why constraints occupy such an important place
in relational databases.

I believe your only complaint about R:Base is that it uses implicit
domaining based on column names rather than user defined domains as some
other database do.  This means that, on the relatively rare occasions when
want a column to have the same name but a different data type you must
differentiate the column names in some way.  I hardly see this as a major
problem and, as long as you don't get lazy and just add a one character
suffix to the column names, it can _only_ lead to greater clarity in your
database design.

I, for one, would be loath to give up the implicit domaining that R:Base
offers.  It's true that (very) ocassionaly I have to put some extra thought
into naming a column, but the amount of time I save not having to go back
and look up column definitions easily makes up for it.

You argument about class members being able to have different datatypes is
not to the point.  Firstly, relational database and object hierarchies are
not the same thing.  Secondly, an large amount of work in object oriented
programming goes exactly into assuring that you know what is held in each
data member.  Both inheritance and aggregation serve this purpose.

I do a lot of object oriented programming and use a lot of third party
libraries written by people around the world.  One of the major hassles is
that there are no naming conventions for class members that have the same
semantic meaning.
--
Larry



_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

================================================
TO SEE MESSAGE POSTING GUIDELINES:
Send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: INTRO rbase-l
================================================
TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: UNSUBSCRIBE rbase-l

Reply via email to