Take the 2-minute tour ×

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 ?

share|improve this question
What's the question? This sounds like a statement. –  Tim Jarvis Aug 13 '09 at 23:18
I agree that is difficult to comment on the statement. Please reformulate the question as it appear to be too generic. What are you interested in? performaces, ease of programming, other? –  Stefano Borini Aug 13 '09 at 23:23
Vote for closing, but still I think there's something good to learn from this question once it's actually a question. –  Stefano Borini Aug 13 '09 at 23:24
Well that was a try to reformulate my ideas about the ODBC layer, My real Question is: how much do you like the ODBC ? why ? –  ZeroCool Aug 14 '09 at 0:56
add comment

2 Answers

up vote 2 down vote accepted

The querries sent through ODBC are not trully portable unless you use the dreaded ODBC Escape Sequences. Even then, the 'portable' part is only a small subset of the SQL grammar (eg. no DDL).

Frankly, I never seen a project succeed at this. At best they support a set of tested drivers, like SQL/Oracle/DB2 and that's it. A much better approach is to abstract your application data access layer and provide a different implementation for each back-end you support.

share|improve this answer
Well That's true, but needs a tremendous work ! –  ZeroCool Aug 14 '09 at 0:47
Yes, tremendous work if have to do by yourself. Not tremendous (but costly), if someone has already done it and selling it. –  Manoj R Jan 25 '12 at 9:27
add comment

I think you would get better overall flexibility in using ORM framework, like Hibernate or such (depending on the programming environment)...

share|improve this answer
add comment

Your Answer


