JDBC-ODBC - Loading sun.jdbc.odbc.JdbcOdbcDriver

This section describes how to load the JDBC-ODBC Bridge driver class with the Class.forName() method.

Loading the JDBC-ODBC Bridge driver is the same as loading other JDBC drivers. All you need to do is to call Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"). Here is a sample Java program showing you how to load the JDBC-ODBC Bridge driver:

/* LoadJdbcOdbcDriver.java
 * Copyright (c) HerongYang.com. All Rights Reserved.
 */
import java.sql.*;
public class LoadJdbcOdbcDriver {
  public static void main(String [] args) {
    Connection con = null;
    try {

// Load the JDBC-ODBC bridge driver
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;
      System.out.println("JDBC-ODBC driver loaded ok.");

    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

If you try to run this program directly with newer JDK, you will a ClassNotFoundException error:

herong> java LoadJdbcOdbcDriver

java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver
  at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
  at java.lang.Class.forName0(Native Method)
  at java.lang.Class.forName(Class.java:264)
  at LoadJdbcOdbcDriver.main(LoadJdbcOdbcDriver.java:11)

This error is expected, because sun.jdbc.odbc.JdbcOdbcDriver is not included in the JDK distribution any more.

If you want to continue to use the JDBC-ODBC Bridge driver, you need to find one and specify it in classpath.

Otherwise, you need to stay with JDK 1.7 as I did to run the example program:

herong> progra~1\java\jdk1.7.0_45\bin\java LoadJdbcOdbcDriver
JDBC-ODBC driver loaded ok.

Table of Contents

 About This Book

 JDBC (Java Database Connectivity) Introduction

 JDK (Java SE) Installation

 Microsoft SQL Server Express Edition

 Microsoft JDBC Driver for SQL Server

 Microsoft JDBC Driver - Query Statements and Result Sets

 Microsoft JDBC Driver - DatabaseMetaData Object

 Microsoft JDBC Driver - DDL Statements

 Microsoft JDBC Driver - DML Statements

 SQL Server - PreparedStatement

 SQL Server CLOB (Character Large Object) - TEXT

 SQL Server BLOB (Binary Large Object) - BLOB

JDBC-ODBC Bridge Driver - sun.jdbc.odbc.JdbcOdbcDriver

 JDBC-ODBC Bridge Driver Features

JDBC-ODBC - Loading sun.jdbc.odbc.JdbcOdbcDriver

 JDBC-ODBC - Creating DSN

 JDBC-ODBC - Connecting to a DSN

 JDBC-ODBC - Problem with Incorrect DSN

 JDBC-ODBC Bridge Driver - Flat Text Files

 JDBC-ODBC Bridge Driver - MS Access

 JDBC-ODBC Bridge Driver - MS SQL Server

 Archived Tutorials

 References

 Full Version in PDF/EPUB