Получение SQLException "ошибка входа пользователя" подключение к SQL Server 2008
Я пытаюсь подключиться к SQL Server 2008 через Java.
- я добавил
sqljdbc4.jar
в библиотеку моего проекта. - имя пользователя и пароль не заданы для доступа к базе данных (проверка подлинности Windows).
- порт 1433 слушает, но я все еще получаю это исключение:
исключение SQL: com.Microsoft.от SQLServer.интерфейс jdbc.SQLServerException: ошибка входа для пользователя". ClientConnectionId: 085d5df3-ad69-49e1-ba32-b2b990c16a69
соответствующий код:
public class DataBases
{
private Connection link;
private java.sql.Statement stmt;
public ResultSet rs;
public DataBases()
{
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String connectionUrl = "jdbc:sqlserver://localhost:1433;databaseName=DB;";
Connection con = DriverManager.getConnection(connectionUrl);
}
catch (SQLException e)
{
System.out.println("SQL Exception: "+ e.toString());
}
catch (ClassNotFoundException cE)
{
System.out.println("Class Not Found Exception: "+ cE.toString());
}
}
}
4 ответов
если вы хотите аутентификацию windows, вам нужно добавить опцию integratedSecurity=true
к вашему URL JDBC:
jdbc:sqlserver://localhost:1433;databaseName=DB;integratedSecurity=true
также необходимо sqljdbc_auth.dll
(остерегайтесь 32/64 бит) в системном пути Windows или в каталоге, определенном через java.library.path
для деталей см. руководство водителя:http://msdn.microsoft.com/en-us/library/ms378428.aspx#Connectingintegrated
у меня была такая же проблема, когда я пытался подключиться к Microsoft SQL server с Java. Я использовал jTDS
драйвер вместо обычного SQLJdbdc
драйвер.
Class.forName("net.sourceforge.jtds.jdbc.Driver");
String connectionUrl = "jdbc:jtds:sqlserver://localhost:1433;databaseName=DB;integratedSecurity=true";
Connection con = DriverManager.getConnection(connectionUrl);
У меня была та же проблема. Его из-за неправильного формата ConnectionUrl. В ConnectionUrl отсутствуют имя пользователя и пароль.
String ConnectionUrl = "jdbc:sqlserver://localhost:1433;databaseName=DB","username","password");"
Я надеюсь, что это работает хорошо!!!
это сообщение моя помощь: jdbc.SQLServerException: ошибка входа пользователя для любого пользователя
вам понадобится integratedSecurity=true
флаг и убедитесь, что свойства сервера действительно установлены в "режим проверки подлинности Windows" под безопасностью.