How do I fix no suitable driver found for the JDBC SQL server?

2.2K    Asked by Diyatomar in SQL Server , Asked on Apr 6, 2021

I'm getting this exception”No suitable driver found for jdbc” when I try to run this program. It is the Microsoft examples. I've added the sqljdbc4.jar to the classpath in netbeans for both compile and Run, via the project properties. I also tested that the class, is found by using an import statement below -  as their no error during compile, so it must be finding the jar.

Is it be related to a dll or some sql dll that the sqldbc4.jar references?

This is the exact exception, and below is the exact code, except the password.

Exception:

run:

java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver://localhost:1433;databaseName=HealthCareDatabase

Error Trace in getConnection() : No suitable driver found for jdbc:microsoft:sqlserver://localhost:1433;databaseName=HealthCareDatabase

Error: No active Connection

    at java.sql.DriverManager.getConnection(DriverManager.java:602)

    at java.sql.DriverManager.getConnection(DriverManager.java:185)

    at javaapplication1.Connect.getConnection(Connect.java:35)

    at javaapplication1.Connect.displayDbProperties(Connect.java:50)

    at javaapplication1.JavaApplication1.main(JavaApplication1.java:23)

BUILD SUCCESSFUL (total time: 1 second)

Code: 

package javaapplication1;

import com.microsoft.sqlserver.jdbc.SQLServerDriver;

import java.*;

public class Connect {

    private java.sql.Connection con = null;

    private final String url = "jdbc:microsoft:sqlserver://";

    private final String serverName = "localhost";

    private final String portNumber = "1433";

    private final String databaseName = "HealthCareDatabase";

    private final String userName = "larry";

    private final String password = "xxxxxxx";

    // Constructor

    public Connect() {

    }

    private String getConnectionUrl() {

        return url + serverName + ":" + portNumber + ";databaseName=" + databaseName ;

    }

    private java.sql.Connection getConnection() {

        try {

            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

            con = java.sql.DriverManager.getConnection(getConnectionUrl(), userName, password);

            if (con != null) {

                System.out.println("Connection Successful!");

            }

        } catch (Exception e) {

            e.printStackTrace();

            System.out.println("Error Trace in getConnection() : " + e.getMessage());

        }

        return con;

    }

    public void displayDbProperties() {

        java.sql.DatabaseMetaData dm = null;

        java.sql.ResultSet rs = null;

        try {

            con = this.getConnection();

            if (con != null) {

                dm = con.getMetaData();

                System.out.println("Driver Information");

                System.out.println("tDriver Name: " + dm.getDriverName());

                System.out.println("tDriver Version: " + dm.getDriverVersion());

                System.out.println("nDatabase Information ");

                System.out.println("tDatabase Name: " + dm.getDatabaseProductName());

                System.out.println("tDatabase Version: " + dm.getDatabaseProductVersion());

                System.out.println("Avalilable Catalogs ");

                rs = dm.getCatalogs();

                while (rs.next()) {

                    System.out.println("tcatalog: " + rs.getString(1));

                }

                rs.close();

                rs = null;

                closeConnection();

            } else {

                System.out.println("Error: No active Connection");

            }

        } catch (Exception e) {

            e.printStackTrace();

        }

        dm = null;

    }

    private void closeConnection() {

        try {

            if (con != null) {

                con.close();

            }

            con = null;

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

    public static void main(String[] args) throws Exception {

        Connect myDbTest = new Connect();

        myDbTest.displayDbProperties();

    }

Answered by Donna Chapman

Your Answer

Interviews

Parent Categories