首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用jTDs连接到Server 2012

使用jTDs连接到Server 2012
EN

Stack Overflow用户
提问于 2013-06-19 11:57:20
回答 1查看 21K关注 0票数 2

尝试使用JDBC连接到Server 2012 (速成版)。

这是我的代码:

代码语言:javascript
复制
import java.sql.*;

public class MSSqlTestConnection {
    public static void main(String[] args) {
        try {
            Connection con = DriverManager.getConnection (
                "jdbc:jtds:sqlserver://localhost;instance=LOCALDB#B431115D;DatabaseName=foo","sa","my_password"
            );
            Statement stmt = con.createStatement();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

我已经试过了所有可能的组合。下面是完整的堆栈跟踪:

代码语言:javascript
复制
java.sql.SQLException: Login failed for user 'sa'.
    at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:372)
    at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2988)
    at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2421)
    at net.sourceforge.jtds.jdbc.TdsCore.login(TdsCore.java:632)
    at net.sourceforge.jtds.jdbc.JtdsConnection.<init>(JtdsConnection.java:371)
    at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:184)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at MSSqlTestConnection.main(MSSqlTestConnection.java:10)

管道和TCP/IP已启用

启用混合身份验证模式

当我使用"sa“登录时,Management运行良好

我几乎什么都试过了。我似乎找不到解决办法。我试着改变了instance=SQLExpress。移除实例属性。添加用户名和密码属性。添加数据库名属性。毫无办法。

任何帮助都将不胜感激。

解决方案:

我重新安装了Server 2012。终于找到了工作连接字符串。结果,2012更改了默认实例的名称。现在是MSSQLSERVER而不是SQLExpress。您可以在设置Server 2012时选择自己的实例,即默认实例或命名实例。

代码语言:javascript
复制
Connection Connect = DriverManager.getConnection("jdbc:jtds:sqlserver://localhost:1433;instance=MSSQLSERVER;DatabaseName=Database_name",user,password);

此外,不要忘记在设置Server时使用混合身份验证模式。

EN

回答 1

Stack Overflow用户

发布于 2015-10-16 10:11:12

在将应用程序从MSSQL 2005迁移到MSSQL 2012之后,我遇到了同样的症状。

我的解决办法是将连接字符串从

代码语言:javascript
复制
jdbc:jtds:sqlserver://a.example.com/xyz;user=bob;password=xxx

代码语言:javascript
复制
jdbc:jtds:sqlserver://a.example.com/xyz;instance=MSSQLSERVER;user=bob;password=xxx;TDS=7.0

简而言之,我在字符串末尾添加了这两个属性:

代码语言:javascript
复制
;instance=MSSQLSERVER;TDS=7.0
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17190583

复制
相关文章

相似问题

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