gpt4 book ai didi

java - 与 SQL Server : login failed for user x 的 JDBC 连接

转载 作者:行者123 更新时间:2023-12-01 18:59:58 25 4
gpt4 key购买 nike

我正在尝试设置与 Sql Server 2008 的 JDBC 连接。我已使用以下信息在 Sql Server 中创建了一个数据库:

CREATE LOGIN xtest WITH PASSWORD = 'berenjenas7(((';  
GO
CREATE USER samxtest FOR LOGIN xtest;
GO
GRANT SELECT TO samxtest;
GO
GRANT INSERT TO samxtest;
GO
GRANT UPDATE TO samxtest;
GO
GRANT DELETE TO samxtest;
GO

我从这里安装了 JDBC 驱动程序:http://www.microsoft.com/en-us/download/details.aspx?id=11774我使用了此链接中的 connectURL 类:http://msdn.microsoft.com/en-us/library/aa342339.aspx以测试连接

我在代码中保留了默认端口 1433。下图应该可以证明这确实是端口: enter image description here当然,我将连接字符串更改为:

String connectionUrl = "jdbc:sqlserver://localhost:1433;databaseName=XTest;user=samxtest;password=berenjenas7(((";

我不明白这是怎么回事?我得到的错误是:

com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'samxtest'. ClientConnectionId:2344af..... at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216) at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:254) at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:84) at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2908) at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:2234) at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41) at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:2220) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1326) at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827) at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at connectURL.main(connectURL.java:18)

最佳答案

误读:

确保 SQL Server 的身份验证模式为“混合模式(Windows 身份验证和 SQL Server 身份验证)”。

运行以下脚本来更改身份验证

LOGIN xtest ENABLE

ALTER LOGIN samxtest WITH PASSWORD = 'password'

关于java - 与 SQL Server : login failed for user x 的 JDBC 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12616582/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com