JDBC Tutorials - Herong's Tutorial Examples - v3.12, by Dr. Herong Yang
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
JDBC (Java Database Connectivity) Introduction
Installing and Running Java DB - Derby
Derby (Java DB) JDBC DataSource Objects
Java DB (Derby) - DML Statements
Java DB (Derby) - ResultSet Objects of Queries
Java DB (Derby) - PreparedStatement
MySQL JDBC Driver (MySQL Connector/J)
MySQL - Reference Implementation of JdbcRowSet
MySQL - JBDC CallableStatement
MySQL CLOB (Character Large Object) - TEXT
MySQL BLOB (Binary Large Object) - BLOB
Oracle Express Edition Installation on Windows
Oracle - Reference Implementation of JdbcRowSet
Oracle - JBDC CallableStatement
Oracle CLOB (Character Large Object) - TEXT
Oracle BLOB (Binary Large Object) - BLOB
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 - 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
Summary of JDBC Drivers and Database Servers