∟Specifying Port Number in Connection URL

This section describes how to specify port numbers in the connection URL for a specific SQL Server database instance.

Now I know that my SQLEXPRESS instance is listening on port 60782. I can modify my example program to specify the port number in the connection URL in the following syntax:

jdbc:sqlserver://server_name:port;user=login;password=****

The revised example program below shows you how to include port number 60782 in the connection URL:

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

// Obtaining a connection to SQL Server
      con = DriverManager.getConnection(
          "jdbc:sqlserver://localhost:60782;"
        + "user=herong;password=T0pSecret");

// Connection is ready to use
      DatabaseMetaData meta = con.getMetaData();
      System.out.println("Driver name: "
        + meta.getDriverName());
      System.out.println("Driver version: "
        + meta.getDriverVersion());
      System.out.println("Server name: "
        + meta.getDatabaseProductName());
      System.out.println("Server version: "
        + meta.getDatabaseProductVersion());
      System.out.println("Connection URL: "
        + meta.getURL());
      System.out.println("Login name: "
        + meta.getUserName());

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

Run the above program with the latest versions of JDK, JDBC Driver and SQL Server, you should get:

herong> java -cp .;mssql-jdbc-9.4.1.jre16.jar ConnectionTest4.java
Driver name: Microsoft JDBC Driver 9.4 for SQL Server
Driver version: 9.4.1.0
Server name: Microsoft SQL Server
Server version: 15.00.2000
Connection URL: jdbc:sqlserver://localhost:60782;
   authenticationScheme=nativeAuthentication;xopenStates=false;
   sendTimeAsDatetime=true;trustServerCertificate=false;
   sendStringParametersAsUnicode=true;selectMethod=direct;
   responseBuffering=adaptive;packetSize=8000;
   multiSubnetFailover=false;loginTimeout=15;lockTimeout=-1;
   lastUpdateCount=true;encrypt=false;disableStatementPooling=true;
   applicationName=Microsoft JDBC Driver for SQL Server;
Login name: Herong

Compile and run it with JDK 13 and JDBC Driver 7.4, you should get:

herong> java -cp .:mssql-jdbc-7.4.1.jre12.jar ConnectionTest3.java

Driver name: Microsoft JDBC Driver 7.4 for SQL Server
Driver version: 7.4.1.0
Server name: Microsoft SQL Server
Server version: 11.00.3128
Connection URL: ...
Login name: Herong

Compile and run it with JDK 1.8 and JDBC Driver 4.2, you should get:

herong> java -cp .;sqljdbc42.jar ConnectionTest3

Driver name: Microsoft JDBC Driver 4.2 for SQL Server
Driver version: 4.2.6225.100
Server name: Microsoft SQL Server
Server version: 12.00.2000
Connection URL: ...
Login name: Herong

Previously, when I ran the same example program with JDK 1.6, JDBC Driver 1.0, and SQL Server 2005 Express Edition, using the correct port number, I got the following output:

herong> java -cp .;sqljdbc.jar ConnectionTest3

Driver name: Microsoft SQL Server 2005 JDBC Driver
Driver version: 1.0.809.102
Server name: Microsoft SQL Server
Server version: 9.00.1399
Connection URL: ...
Login name: Herong

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

 Installing Microsoft JDBC Driver for SQL Server

 Loading Driver Class Automatically

 Loading Driver Class with Class.forName()

 DriverManager.getConnection() and Connection URL

 Enable 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

 Using Connection Pool with JDBC

 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

 Archived Tutorials

 References

 Full Version in PDF/EPUB