JDBC for SQL Server - Herong's Tutorial Examples - v3.14, by Herong Yang
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
JDBC (Java Database Connectivity) Introduction
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