That's the problem, standards aren't kept by all databases and features are added.  this leaves us implementing a subset of features or using the abstration layer to implement differing features on different databases.  I quick example is auto increment in mysql and sequence in pgsql.

On 13 May 2006 17:17:05 -0400, Pat Collins <pat@linuxcolumbus.com> wrote:

On Sat, 13 May 2006 22:27:14 +1000, "Jeremy Epstein" <jazepstein@gmail.com>
wrote :

> IMO, learning the DDL specifics of two different database systems is
> more of a barrier for new developers, than learning a simple
> abstraction layer ever could be. I can't speak for all developers, but
> personally, I've always been much more familiar with MySQL, and I've
> been scared and uneducated about the details of pgSQL for quite some
> time. I've been developing with Drupal for over a year, but only
> recently have I taken the time to dig a little deeper (just a little)
> into pgSQL - just enough to make my modules compatible with it.
>

For the most part the DDL is not much different no matter what db you are
using thanks to the SQL specifications being a standard just like HTML is a
standard.


> Most Drupal developers are only really comfortable with one system
> (out of MySQL and pgSQL - with the majority being on the MySQL side).
> Why should we have to learn another one, when a few simple extra
> functions in core could eliminate that learning barrier for us? This
> reason, combined with the other advantages of an improved abstraction
> layer (i.e. less duplicated SQL code, less maintenance, less chance of
> bugs), makes the choice a no-brainer (IMO).
>

Again, you aren't learning mysql or pgsql you are learning sql a standard
syntax that is pretty much portable across databases.

Pat