我试图用DriverManager.getConnection()
从Java应用程序连接到SQL Server数据库,但我不断收到“登录失败的用户“错误。我试过使用com.microsoft.sqlserver.jdbc.SQLServerDriver
和net.sourceforge.jtds.jdbc.Driver
来连接,但都一直在触及这个问题。SQL Server登录失败Java DriverManager.getConnection(),从Python与pymssql.connect()工作
下面是我使用的连接代码:我知道帐户有权访问DB
Class.forName("net.sourceforge.jtds.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:jtds:sqlserver://SERVERADDRESS:1433;DatabaseName=DBNAME;user=USER;password=PASS");
,因为我已经使用pymssql.connect(SERVERADDRESS, USER, PASS, DBNAME)
在同一服务器Python应用程序之前,连接到它/ DB/creds。
从this article,我最终设法使用Windows身份验证与我的个人帐户工作,但我仍然无法使用我们的服务帐户得到它的工作。有没有人对Python应用程序为什么可以连接但是Java不能够有什么了解?
当你从Python应用程序连接是您将服务帐户用户名指定为“DOMAINNAME \ USERNAME”?换句话说,服务帐户是Windows帐户,而不是“SQL Server身份验证”登录名? –
我在'域\\ svc_account'中传递。我在Java中的连接字符串中做同样的事情。因此,连接字符串是'“jdbc:jtds:sqlserver:// SERVERADDRESS:1433; DatabaseName = DBNAME; user = domain \\ svc_account; password = PASS”' –