尝试连接到SQL Server会导致ClassNotFoundException

时间:2011-09-20 08:46:45

标签: java sql-server-2005

import java.sql.*;

public class MysqlConnect {
    public static void main(String[] args) {
        System.out.println("MySQL Connect Example.");
        Connection conn = null;
        String url = "\\host/context/";
        String dbName = "theDatabaseName";
        String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver ";
        String userName = "theUserName";
        String password = "thePassword";
        try {
            Class.forName(driver).newInstance();
            conn = DriverManager.getConnection(url + dbName, userName, password);
            System.out.println("Connected to the database");
            conn.close();
            System.out.println("Disconnected from database");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

我在运行此代码时遇到问题。

我已经下载了SQL Server驱动程序(sqljdbc),将其设置在类路径中并将其复制到java / lib目录中,但我仍然得到相同的结果:ClassNotFoundException

有人能帮助我吗?

3 个答案:

答案 0 :(得分:1)

请检查JDBC URL。您\\xeon-s5/LDF RAID (G)/提到的那个似乎不是正确的网址。典型的网址将显示为jdbc:sqlserver://neptune.acme.com:1433。进一步查看this。这里how to从java连接到SQL服务器。

答案 1 :(得分:0)

您的班级名称末尾有一个尾随空格。

"com.microsoft.sqlserver.jdbc.SQLServerDriver "

应该很可能是

"com.microsoft.sqlserver.jdbc.SQLServerDriver"

答案 2 :(得分:0)

您的类路径中没有“com.microsoft.sqlserver.jdbc.SQLServerDriver”类。

确保您的CLASSPATH中有以下jar:Msbase.jar,Msutil.jar,Mssqlserver.jar

此处有更多详情:http://support.microsoft.com/kb/313100