首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >难以使用SQLserver jdbc连接数据库

难以使用SQLserver jdbc连接数据库
EN

Stack Overflow用户
提问于 2013-09-22 13:33:35
回答 2查看 1.7K关注 0票数 2

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

代码语言:javascript
复制
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) 

这是我的密码:

代码语言:javascript
复制
    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;
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-22 14:14:10

您不能传递任何身份验证凭据。如果您想使用集成安全性(windows身份验证),那么需要显式地指定在连接URL 中您需要加载所需的本机库。

请参阅MSDN上Windows上的Connecting with Integrated Authentication On Windows

这实际上是将包含(32位或64位) sqljdbc_auth.dll的文件夹包含在java.library.path system属性中(详细信息请参阅链接),并将integratedSecurity=true添加到连接字符串中:

代码语言:javascript
复制
DriverManager.getConnection(
   "jdbc:sqlserver://localhost:1433;databaseName=DBank;integratedSecurity=true");
票数 5
EN

Stack Overflow用户

发布于 2013-09-22 13:35:20

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

代码语言:javascript
复制
DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=DBank;","","");

尝试提供db用户名和密码,例如:

代码语言:javascript
复制
DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=DBank;","myusername","mypassword");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18944406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档