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