I beleive that ODBC has gotten to a certain point that makes it more reliable and queit portable. Needless to mention that there arent too many oppurtunities for Speed optimization if one should consider using a direct RDBMS API.
In Addition, ODBC abstraction, to some sense, does make codes writing portable, having said that, Migrating to new RDBMS won't requiere complete code rewrite!
Nevertheless, a direct API deal can outpass ODBC performances, hence deal with the specific RDBMS low level constraints, as such, gaining full features access.
What do you think of this ?