Re: OO versus RDB
Date: 2 Jul 2006 05:24:57 -0700
Message-ID: <1151843097.767790.197110_at_j8g2000cwa.googlegroups.com>
> >>>If the semantics of the old column "salary" are the same as the new
> >>>column "baseSalary", why on earth would you need to change the name? If
> >>>the name is not changed, no existing SQL statements would break. Only
> >>>the applications that needs the new "burdenedSalary", would need to be
> >>>rewritten.
> >>
> >>To capture the correct semantics of the attribute. In a context where
> >>one must distinguish between different flavors of salary, the original
> >>name was poorly chosen and the DBA fixed that. The attribute name is
> >>supposed to reflect the attribute semantics. Not changing it just leads
> >>to opportunities for new applications to screw up later.
> >
> >
> > Nothing forces you to change the column name. The solution will work
> > with the old name. Would you change the name of the corresponding
> > object property too, and break the interfaces? I don't think so.
> > Changing column names is not a relevant motivation for decoupling SQL
> > statements.
>
> As I said, you are missing the point. The example was of the sort of
> change that can break queries even though the accessed attribute
> semantics was unchanged.
> Why one would make such a change is not
> particularly relevant,
> though ensuring proper semantics for attributer
> names is a valid reason (albeit often not a strong one compared to other
> trade-offs like breaking existing applications).
> The point is that such changes can and are made.
Every possible stupid change can be made, but they are NOT made.
Fredrik Bertilsson
http://frebe.php0h.com
Received on Sun Jul 02 2006 - 14:24:57 CEST