使用Windows身份验证将Java连接到MS SQL Server数据库
我发现了一些类似的问题,但没有有用的答案。 我需要从我的java应用程序中操作一个名为PDPJ_Student的MS SQL Server数据库,但我无法连接到它。我得到以下错误:
用户“LAPTOP-TITI/TITI”的[Microsoft][SQLServer 2000 JDBC驱动程序][SQLServer]登录失败。该用户未与受信任的SQL Server连接关联
我的消息来源如下:
Connection con = null;
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
con = DriverManager.getConnection("jdbc:microsoft:sqlserver://LAPTOP-TITI;DatabaseName=PDPJ_Student", "LAPTOP-TITI/Titi", "");
}
catch(Exception e){
System.out.println("Error at connection");
e.printStackTrace();
}
当我在authenticatin启动MS SQL Server时,服务器名称显示:LAPTOP-TITI;并且身份验证设置为Windows身份验证。用户名字段显示LAPTOP-TITI/TITI,但已禁用,密码字段为空
我也尝试过:
con = DriverManager.getConnection("jdbc:microsoft:sqlserver://LAPTOP-TITI;DatabaseName=PDPJ_Student", integratedSecurity=true);
但还是没什么
我做错了什么?你能给我一些指示吗
另外,我不允许更改身份验证类型,即使我尝试更改为SQL Server身份验证,它也不允许我创建任何新用户
# 1 楼答案
你的问题没有提到你的客户机是运行Windows还是非WindowsThis topic on MSDN建议,如果您的客户机使用的是Linux,则需要购买DataDirect驱动程序才能使Kerberos身份验证工作。如果您使用的是Windows,那么应该可以使用Microsoft的JDBC驱动程序