Java中SQL Server的驱动程序名称

Java中SQL Server的驱动程序名称,java,sql-server,jdbc,Java,Sql Server,Jdbc,我正在尝试将SQL Server与我的Java应用程序连接,但我不知道class.forName(driverName)中提供的驱动程序类名 我正在使用Eclipse,在我的项目中导入了JAR文件,并将其添加到构建路径中 import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; public class Demo { public static void m

我正在尝试将SQL Server与我的Java应用程序连接,但我不知道class.forName(driverName)中提供的驱动程序类名

我正在使用Eclipse,在我的项目中导入了JAR文件,并将其添加到构建路径中

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;

public class Demo {
    public static void main(String[] args) {
        Connection conn = null;
        PreparedStatement stmt = null;
        String query = "CREATE TABLE student("
                + "id       INT     PRIMARY KEY,"
                + " name    VARCHAR(20)"
                + ");";

        try {
            Class.forName("WHAT SHOULD I WRITE HERE ?");
            conn = DriverManager.getConnection("jdbc:sqlserver://lakshya:1433");
            System.out.println("Conenction established.");

            stmt = conn.prepareStatement(query);
            stmt.executeQuery();

            System.out.println("student table created..");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
我无法进一步编译代码,因为我不知道驱动程序名。

As,类名是
com.microsoft.sqlserver.jdbc.SQLServerDriver

但是,对于自2006年以来生产的任何JDBC驱动程序(对于JDBC4或更高版本),您不需要在这样的应用程序中使用
Class.forName
加载驱动程序。如果驱动程序位于初始类路径上,它将自动加载

只有在更复杂的类加载情况下(例如web应用程序),您可能需要显式加载,但在这些类型的应用程序中,您通常会配置
数据源
,而不是使用
DriverManager

简而言之,您应该能够删除行
Class.forName(“我应该在这里写什么?”)和应用程序将正常工作

另外,请确保参考的其余部分,因为您当前的JDBC url不完整,因为它不包含数据库名称。

您下载的文件(zip或tar.gz)将包含一个jar文件。在其中,您将找到一个名为“META-INF/services/java.sql.Driver”的文件,其中包含您的驱动程序类


正如Rotterveel先生所指出的,您可能不需要明确指定驱动程序。

请链接到您正在使用的jar?@hd1我正在使用这个jar文件。请查看我的答案以获取帮助。