Java 难以使用SQLServerJDBC连接到数据库

Java 难以使用SQLServerJDBC连接到数据库,java,sql-server,database,jdbc,Java,Sql Server,Database,Jdbc,我正在尝试使用sqljdbc4连接到我的数据库,对此我很陌生,所以我遵循了一些教程,但它似乎仍然不起作用,当我尝试运行该程序时,我遇到以下异常: com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user ''. ClientConnectionId:f181fd37-7e28-4392-ac86-02914c2090e1 at com.microsoft.sqlserver.jdbc.SQLSer

我正在尝试使用sqljdbc4连接到我的数据库,对此我很陌生,所以我遵循了一些教程,但它似乎仍然不起作用,当我尝试运行该程序时,我遇到以下异常:

com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user ''.        ClientConnectionId:f181fd37-7e28-4392-ac86-02914c2090e1
at  com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216) 
这是我的代码:

    try {

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

        Connection con = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=DBank;","","");

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
         } catch (SQLException e) {
            e.printStackTrace(); 
         }
    return null;

在getConnection方法中连接到数据库时,您正在传递空用户名和密码:

DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=DBank;","","");
请尝试提供db用户名和密码,例如:

DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=DBank;","myusername","mypassword");

您没有传递任何身份验证凭据。如果要使用集成安全性(windows身份验证),则需要在连接URL中明确指定需要加载此操作所需的本机库

请参见MSDN上的Windows

这基本上可以归结为将包含(32位或64位)sqljdbc_auth.dll的文件夹包含在
java.library.path
系统属性中(有关详细信息,请参见链接),并将
integratedSecurity=true
添加到连接字符串中:

DriverManager.getConnection(
   "jdbc:sqlserver://localhost:1433;databaseName=DBank;integratedSecurity=true");

我没有在我的数据库中配置密码和用户名,我已经删除了,“,”,但我仍然得到同样的例外谢谢你!!!我花了好几个小时寻找一个解决方案,但不明白为什么它不起作用,现在起作用了。有一段时间我一直在安静地处理这个问题。我通过Proxool使用驱动程序,并将“integratedSecurity”指定为一个属性,根据MS文档,它似乎应该工作。果然,转到URL解决了这个问题。谢谢