JDBC Tutorials - Herong's Tutorial Examples - Version 3.03, by Dr. Herong Yang
DriverManager.getConnection() and Connection URL
This section describes how to use DriverManager.getConnection() and connection URL for the Microsoft JDBC driver.
Once the JDBC driver class is loaded, you are ready to connect to a SQL Server by using the DriverManager.getConnection(connection_url) method. The connection URL, connection_url, is a string with the following syntax:
jdbc:sqlserver://server_name;user=login;password=****
The tutorial program below shows you a good example of using getConnection() and connection URL:
/* ConnectionTest2.java - Copyright (c) 2015, HerongYang.com, All Rights Reserved. */ import java.sql.*; public class ConnectionTest2 { public static void main(String [] args) { Connection con = null; try { // Obtaining a connection to SQL Server con = DriverManager.getConnection( "jdbc:sqlserver://localhost;" + "user=sa;password=HerongY@ng"); } catch (Exception e) { e.printStackTrace(); } } }
If you run this program with JDK 1.8 and JDBC Driver 4.2, you may get a surprising error like this:
C:\herong>\Progra~1\java\jdk1.8.0_45\bin\javac ConnectionTest2.java C:\herong>\Progra~1\java\jdk1.8.0_45\bin\java -cp .;\local\lib\sqljdbc42.jar ConnectionTest2 com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host localhost, port 1433 has failed. Error: "connect timed out. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.".
The error suggests us to verify: is the database instance running or not, which TCP/IP port the instance is listening for incoming connections, and is there any firewall blocking the TCP/IP connection. See the next tutorial on how to troubleshoot the problem.
Previously, when I ran the same example program with JDK 1.6, JDBC Driver 1.0, and SQL Server 2005 Express Edition, the program failed with a different error message:
C:\herong>\progra~1\java\jdk1.6.0_02\bin\javac ConnectionTest2.java C:\herong>\progra~1\java\jdk1.6.0_02\bin\java -cp .;\local\lib\sqljdbc.jar ConnectionTest2 SQLException: The TCP/IP connection to the host has failed. java.net.ConnectException: Connection refused: connect
Last update: 2015.
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 2005 Express Edition
►Microsoft JDBC Driver for SQL Server - sqljdbc42.jar
Installing Microsoft JDBC Driver for SQL Server
Loading Driver Class Automatically
Loading Driver Class with Class.forName()
►DriverManager.getConnection() and Connection URL
Enabling TCP/IP with SQL Server Configuration Manager
Specifying Port Number in Connection URL
Instance Name Better than Port Number
Specifying Instance Name in Connection URL
Closing the Database Connection - con.close()
Specifying Database Name in Connection URL
Incorrect Database Name in Connection URL
Creating Connections with DataSource Class
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 - Flat Text Files
JDBC-ODBC Bridge Driver - MS Access
JDBC-ODBC Bridge Driver - MS SQL Server
Summary of JDBC Drivers and Database Servers