JDBC is a Java Application Programming Interface (API) that you use to execute SQL statements. JDBC enables an application, such as ColdFusion, to interact with a variety of database management systems (DBMSs), without using interfaces that are database- and platform-specific.
The following table describes the four types of JDBC drivers:
Type |
Name |
Description |
---|---|---|
1 |
JDBC-ODBC bridge |
Translates JDBC calls to ODBC calls, and sends them to the ODBC driver. Advantages Allows access to many different databases. Disadvantages The ODBC driver, and possibly the client database libraries, must reside on the ColdFusion server computer. Performance is slower than other JDBC driver types. Adobe does not recommend this driver type unless your application requires DBMS-specific features. |
2 |
Native-API/partly Java driver |
Converts JDBC calls to database-specific calls. Advantages Better performance than Type 1 driver. Disadvantages The vendor's client database libraries must reside on the same computer as ColdFusion. ColdFusion includes a Type 2 driver for use with Microsoft Access Unicode databases. |
3 |
JDBC-Net pure Java driver |
Translates JDBC calls to the middle-tier server, which then translates the request to the database-specific native-connectivity interface. Advantages No need for vendor's database libraries to be present on client computer. Can be tailored for small size (faster loading). Disadvantages Database-specific code must be executed in the middle tier. ColdFusion includes an ODBC socket Type 3 driver for use with Microsoft Access databases and ODBC data sources. |
4 |
Native-protocol/all-Java driver |
Converts JDBC calls to the network protocol used directly by the database. Advantages Fast performance. No special software needed on the computer on which you run ColdFusion. Disadvantages Many of these protocols are proprietary, requiring a different driver for each database. ColdFusion includes Type 4 drivers for many popular DBMSs; however, not all DBMSs are supported in ColdFusion Standard Edition. |
JDBC drivers are stored in JAR files. For example, the JDBC drivers that are supplied with ColdFusion are in the _drivers.jar file. If you are using another JDBC driver, you must store it in the ColdFusion classpath. For example, cf_root/cfusion/lib (server configuration) or cf_webapp_root/WEB-INF/cfusion/lib (multiserver or J2EE configuration).
The following table lists the database drivers supplied with ColdFusion and where you can find more information about them:
Driver |
Type |
For more information |
---|---|---|
Apache Derby Client |
|
|
Apache Derby Embedded |
|
|
DB2 Universal Database |
4 |
|
DB2 OS/390 |
4 |
|
Informix |
4 |
|
Microsoft Access |
3 |
|
Microsoft Access with Unicode support |
2 |
|
Microsoft SQL Server |
4 |
|
MySQL |
4 |
|
ODBC Socket |
3 |
|
Oracle |
4 |
|
Other |
|
|
Sybase |
4 |
To see a list of database versions that ColdFusion supports, go to www.adobe.com/go/sysreqscf.
When running in the J2EE configuration, the ColdFusion Administrator also lets you configure a data source that connects to a JNDI data source. A Java Naming and Directory Interface (JNDI) data source is equivalent to a ColdFusion data source, except you define it by using your J2EE application server. After it's defined, ColdFusion applications use it as they would any data source. For information on defining a JNDI data source, see Connecting to JNDI data sources.