About JDBC



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 various 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 client database libraries of the vendor 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: The database libraries of vendors are not required 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 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).

Supplied drivers

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

 

Connecting to Apache Derby Client

Apache Derby Embedded

 

Connecting to Apache Derby Embedded

DB2 Universal Database

4

Connecting to DB2 Universal Database

DB2 OS/390

4

Connecting to other data sources

Informix

4

Connecting to Informix

Microsoft Access

3

Connecting to Microsoft Access

Microsoft Access with Unicode support

2

Connecting to Microsoft Access with Unicode

Microsoft SQL Server

4

Connecting to Microsoft SQL Server

MySQL

4

Connecting to MySQL

ODBC Socket

3

Connecting to ODBC Socket

Oracle

4

Connecting to Oracle

Other

 

Connecting to other data sources

Sybase

4

Connecting to Sybase

To see a list of database versions that ColdFusion supports, go to www.adobe.com/go/learn_cfu_cfsysreqs_en.

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.