java.sql.SQLException:找不到适合jdbc:sqlserver的驱动程序

时间:2013-07-20 07:46:40

标签: java sql-server-2008 jdbc sqlexception

我正在开发一个我正在创建MSSQLSERVER 2008的Web应用程序 动态数据库。

但是它给了我

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

我的代码是:

String dbName = "db1";
try {
    String url = "jdbc:sqlserver://localhost:1433;databaseName=master";
    Connection connection = DriverManager.getConnection(
                 url,
                 "sa",
                 "roshan14121987");

    Statement statement = connection.createStatement();
    String sqlquery = "CREATE Database \"" + dbName + "\"; ";
    statement.executeUpdate(sqlquery);
    statement.close();

    connection.close();

} catch(Exception e) {
    e.printStackTrace(); 
}

我在lib中添加了sqljdbc4.jar。我已经在NetBeans(使用GlassFish和Tomcat Server)和Eclipse IDE(Tomcat Server)上尝试过它。

另一方面,我尝试使用简单的桌面应用程序,它在两个IDE上都运行良好。在lib。中添加了sqljdbc4.jar。

3 个答案:

答案 0 :(得分:7)

在调用DriverManager.getConnection()之前,您必须加载SQLServer JDBC驱动程序。您可以执行Class.forName("xxxx");,其中xxxx是相应的驱动程序类(带包前缀的完全限定名称)。

编辑:执行此Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”);加载驱动程序。有关详情,请参阅MSDN link

答案 1 :(得分:2)

您的war文件中的sqljdbc4.jar位于WEB-INF / lib下。这是$ CATALINA_HOME / lib的备用位置,建议您保持Web应用程序的自包含。此外,如果您需要更改服务器,则只需将war放入webapps目录即可。

您可能还需要Class.forName([数据库类])。newInstance,但isn't necessary using a JDBC 4.0驱动程序。祝你好运,如果你还有其他问题,请发表评论。

答案 2 :(得分:1)

错误发生在Tomcat服务器的运行时,对吧?我认为您需要确保您的sqljdbc4.jar在服务器中部署。