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