Thomas,
> Personally, I'd never encourage anyone to
> hardcode an application for a specific database.
>
> "never dilute control" == "always use an abstraction"
<grin> I just did a 45 minute presentation on this last night.
"database independance" is very appropriate for some projects. Web bulletin
boards are usually among them.
If, however, your application depends on high performance, strong security, or
rigorous and complex data integrity rules, the use of a client-side database
abstraction layer is, at best, impractical.
There is no one design strategy which is better than all others regardless of
the application. Except maybe documenting your code. ;-)
--
Josh Berkus
Aglio Database Solutions
San Francisco