Editorials

ODBC Is King

Where would we be without ODBC and JDBC? I can guarantee you that life would be much harder today without them.

I really liked the idea of ODBC when it was first introduced by Microsoft. It was based on the old COM technology, and was one of the first frameworks that wrapped a standardized SQL syntax around many different data stores. You could use it to connect to Active Directory, Exchange mail storage, Excel documents, most relational databases, and much more. The only problem with the libraries implementing the full connectivity of ODBC was performance.

ODBC is primarily a specification of interfaces which must be implemented for any native database. When it was first introduced, there were a lot of different middle libraries responsible for transport, connectivity, and native data source implementations. I can remember spending a week getting ODBC drivers to connect to an Oracle database running on a Novell server as a Netware Loadable Module. There were four different network libraries from different vendors required to simply setup the network communication ODBC used to connect over the network. Each dll had to be a specific version, and must be compatible with the dll implementing the layers above and below. Then you plug in ODBC and everything runs fine…just a little slow.

Today ODBC is a completely different tool. Performance is quite good because of the improvements in the network device drivers. Moreover, ODBC itself seems to be more closely tied to the capabilities of a relational data store. In fact, with the push to get Dot Net and Microsoft products to work in the Linux operating system, ODBC is taking the lead in Microsoft database connectivity options. They are encouraging ODBC over ADO. I’m not sure what the status is for JDBC. But it is clear that Microsoft wants their products to be more portable again.

I’m not sure how long this press to support other operating systems will continue. They used to support the MIPS Chip, the original 64 bit Intel chip, and the Dec Microvax with their Windows Server and SQL Server tools. As those platforms never really gained traction in a cost effective way, the product support was dropped.

It’s quite clear that the Linux server is going to be around for a long time. In fact, Microsoft supporting Linux in their own Azure environment will probably assure that Linux support for Dot Net and SQL Server will continue for a long time to come.

One thing you can begin to take action on today, even if you don’t think you’ll ever be using a Linux server, is to start using ODBC for your database connectivity. New or extended database connectivities will most likely show up in ODBC for Microsoft platforms.

Cheers,

Ben