Data stored in a database is normally in a proprietary format in the same way text in a word processor file is in a proprietary format. For example, heres what data looks like in Microsoft Access:
Heres what the same database looks like in Notepad:
Your web application faces the same problem as Notepad or any other application trying to access data in an unknown format: the application cant decipher the data. A software interface is needed between your web application and the database allowing the application and the database to talk to each other.
Three common interfaces let applications communicate with databases. The first is called Open Database Connectivity, or ODBC; the second is called OLE DB (object linking and embedding database); and the third is called Java Database Connectivity, or JDBC.
The job of these interfaces is to act like interpreters. For example, when a speech is given in English at the United Nations, one interpreter translates for French-speaking delegates while another interpreter translates for German-speaking delegates. Similarly, you use one interface for OLE DB-speaking applications, another interface for ODBC-speaking web applications, and still another interface for JDBC-speaking applications. ColdFusion and JSP applications are JDBC speakers, ASP speak ODBC (through a built-in OLE DB/ODBC interpreter), and ASP.NET applications speak OLE DB.