ODBC is a library designed to provide a common application programming interface or API. ODBC allows communication to the back-end database through a driver. The advantage to using ODBC is that it is not vendor-specific; it alleviates the need for independent software vendors and corporate developers to learn multiple application programming interfaces.
It provides a universal data access interface. In other words, you can use the same SQL code to perform queries against different types of databases with very little modification to the ODBC configuration. If your data today sits on a Microsoft SQL server and tomorrow you move the data to another database system, if you were accessing this data through ODBC, all you have to do is modify the ODBC settings to use the new database.
You do not have to adjust any of your SQL code. You just have to keep in mind that the different database vendors have specific SQL extensions that are unique to them. As long as your SQL code doesn’t include these variations, your SQL code will work just fine when you move your data.
Of course, there is a cost associated with using ODBC and it’s not directly monetary. Connecting to your database via ODBC is going to be a bit slower than connecting directly to the backend database system.
Depending on the database systems you plan on connecting to, you may have to install one or more ODBC drivers. Consult with your database vendor’s support site.
Whether you use ODBC to connect to your database is up to you. If it is important to maintain portability, then you should consider ODBC. If performance and the use of proprietary SQL extensions are more important, then ODBC is not going to be the best choice for your implementation.